aboutsummaryrefslogtreecommitdiff
path: root/lib/pipeline.c
diff options
context:
space:
mode:
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++;
}