libidav/utils.c

changeset 70
88092b88ec00
parent 69
0dbdd7e8c1fc
child 71
c9aff0a0093d
--- 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);

mercurial