aboutsummaryrefslogtreecommitdiff
path: root/lib/pipeline.c
diff options
context:
space:
mode:
authorMiroslav Franc <mfranc@gmx.com>2016-07-13 18:43:18 +0200
committerJay Satiro <raysatiro@yahoo.com>2016-07-14 02:52:56 -0400
commitbf430ecdef3d7c49cf01a57e3289ff7aaa1e0278 (patch)
tree23c527882f799236ae2a01cc19e73952dcd7727a /lib/pipeline.c
parentbcc8f485e5e364deb6b5ad8502635b4358aaa277 (diff)
library: Fix memory leaks found during static analysis
Closes https://github.com/curl/curl/pull/913
Diffstat (limited to 'lib/pipeline.c')
-rw-r--r--lib/pipeline.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/pipeline.c b/lib/pipeline.c
index 211194b25..0ff82f086 100644
--- a/lib/pipeline.c
+++ b/lib/pipeline.c
@@ -299,11 +299,16 @@ CURLMcode Curl_pipeline_set_server_blacklist(char **servers,
char *server_name;
server_name = strdup(*servers);
- if(!server_name)
+ if(!server_name) {
+ Curl_llist_destroy(new_list, NULL);
return CURLM_OUT_OF_MEMORY;
+ }
- if(!Curl_llist_insert_next(new_list, new_list->tail, server_name))
+ if(!Curl_llist_insert_next(new_list, new_list->tail, server_name)) {
+ Curl_llist_destroy(new_list, NULL);
+ Curl_safefree(server_name);
return CURLM_OUT_OF_MEMORY;
+ }
servers++;
}