From d20def20462e7eed5cb8a078c9e09599307346d3 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 8 Aug 2013 16:26:10 +0200 Subject: global dns cache: fix memory leak The take down of the global dns cache didn't take CURLOPT_RESOLVE names into account. --- lib/hostip.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib') diff --git a/lib/hostip.c b/lib/hostip.c index c137a19c3..f37b4925b 100644 --- a/lib/hostip.c +++ b/lib/hostip.c @@ -140,6 +140,10 @@ struct curl_hash *Curl_global_host_cache_init(void) void Curl_global_host_cache_dtor(void) { if(host_cache_initialized) { + /* first make sure that any custom "CURLOPT_RESOLVE" names are + cleared off */ + Curl_hostcache_clean(NULL, &hostname_cache); + /* then free the remaining hash completely */ Curl_hash_clean(&hostname_cache); host_cache_initialized = 0; } -- cgit v1.2.3