diff options
Diffstat (limited to 'utils')
-rw-r--r-- | utils/url.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/utils/url.c b/utils/url.c index d94c5fad3..69e3a9293 100644 --- a/utils/url.c +++ b/utils/url.c @@ -633,13 +633,15 @@ url_func_result url_escape(const char *unescaped, char **result) } } - (*result) = malloc(++d - escaped + 1); + *d++ = '\0'; + + (*result) = malloc(d - escaped); if (!(*result)) { free(escaped); return URL_FUNC_NOMEM; } - snprintf((*result), d - escaped, "%s", escaped); - (*result)[d - escaped] = '\0'; + + memcpy((*result), escaped, d - escaped); free(escaped); |