Minor perf tweak for _SPI_strdup(): if we're going to call strlen()
authorNeil Conway <neilc@samurai.com>
Sat, 12 Jan 2008 10:38:32 +0000 (10:38 +0000)
committerNeil Conway <neilc@samurai.com>
Sat, 12 Jan 2008 10:38:32 +0000 (10:38 +0000)
anyway, it is faster to memcpy() than to strcpy().

src/backend/utils/adt/xml.c

index bdb31b456225dacfd2cf5ee41242a7d1639ef17e..7ae82b588d3087570bb572e1762880c656c509e4 100644 (file)
@@ -1821,9 +1821,10 @@ map_sql_value_to_xml_value(Datum value, Oid type)
 static char *
 _SPI_strdup(const char *s)
 {
-       char       *ret = SPI_palloc(strlen(s) + 1);
+       size_t          len = strlen(s) + 1;
+       char       *ret = SPI_palloc(len);
 
-       strcpy(ret, s);
+       memcpy(ret, s, len);
        return ret;
 }