util.c: Simplify strdup and wcsdup
authorEric Biggers <ebiggers3@gmail.com>
Sat, 30 May 2015 20:47:59 +0000 (15:47 -0500)
committerEric Biggers <ebiggers3@gmail.com>
Sat, 30 May 2015 20:47:59 +0000 (15:47 -0500)
src/util.c

index 20f04388156243d4c25072fe7a13280e85e128f6..928a0368668ce06bd4a3236018c707148ffe4068 100644 (file)
@@ -91,28 +91,14 @@ wimlib_calloc(size_t nmemb, size_t size)
 char *
 wimlib_strdup(const char *str)
 {
-       size_t size;
-       char *p;
-
-       size = strlen(str);
-       p = MALLOC(size + 1);
-       if (p)
-               p = memcpy(p, str, size + 1);
-       return p;
+       return memdup(str, strlen(str) + 1);
 }
 
 #ifdef __WIN32__
 wchar_t *
 wimlib_wcsdup(const wchar_t *str)
 {
-       size_t size;
-       wchar_t *p;
-
-       size = wcslen(str);
-       p = MALLOC((size + 1) * sizeof(wchar_t));
-       if (p)
-               p = wmemcpy(p, str, size + 1);
-       return p;
+       return memdup(str, (wcslen(str) + 1) * sizeof(wchar_t));
 }
 #endif