From 9a4ad1b0567ec66876f853f2127ceaa799394bcf Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 11 Apr 2019 12:49:20 +0200 Subject: url: always clone the CUROPT_CURLU handle Since a few code paths actually update that data. Fixes #3753 Closes #3761 Reported-by: Poul T Lomholt --- lib/url.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'lib/url.c') diff --git a/lib/url.c b/lib/url.c index e5a78a6de..75de68f3c 100644 --- a/lib/url.c +++ b/lib/url.c @@ -303,8 +303,7 @@ static void up_free(struct Curl_easy *data) Curl_safefree(up->options); Curl_safefree(up->path); Curl_safefree(up->query); - if(data->set.uh != data->state.uh) - curl_url_cleanup(data->state.uh); + curl_url_cleanup(data->state.uh); data->state.uh = NULL; } @@ -1879,7 +1878,7 @@ static CURLcode parseurlandfillconn(struct Curl_easy *data, /* parse the URL */ if(data->set.uh) { - uh = data->state.uh = data->set.uh; + uh = data->state.uh = curl_url_dup(data->set.uh); } else { uh = data->state.uh = curl_url(); -- cgit v1.2.3