diff -r 0dbdd7e8c1fc -r 88092b88ec00 libidav/utils.c --- a/libidav/utils.c Fri Dec 12 15:48:54 2014 +0100 +++ b/libidav/utils.c Mon Dec 15 09:57:35 2014 +0100 @@ -172,14 +172,10 @@ } sstr_t url; - url.length = base.length + path.length + add_separator; - url.ptr = malloc(url.length + 1); - url.ptr[url.length] = '\0'; - if(add_separator) { - url = sstrncat(url, 3, base, sstr("/"), path); + url = sstrcat(3, base, sstr("/"), path); } else { - url = sstrncat(url, 2, base, path); + url = sstrcat(2, base, path); } return url.ptr; @@ -192,11 +188,7 @@ char *base_path = util_url_path(sn->base_url); base.length -= strlen(base_path); - sstr_t url; - url.length = base.length + href_str.length; - url.ptr = malloc(url.length + 1); - url.ptr[url.length] = '\0'; - url = sstrncat(url, 2, base, href_str); + sstr_t url = sstrcat(2, base, href_str); curl_easy_setopt(sn->handle, CURLOPT_URL, url); free(url.ptr);