summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2008-12-11 23:52:56 +0000
committerDaniel Stenberg <daniel@haxx.se>2008-12-11 23:52:56 +0000
commit0f5895faee96934fdeea82f42f45bb3e53b915e5 (patch)
treeed782bb89422e79698068d95942a23d9f928b613 /lib
parentc0dfe6e51d2bdaa0cf6dedfdad8bd7748f9edd36 (diff)
downloadcurl-0f5895faee96934fdeea82f42f45bb3e53b915e5.tar.gz
- Bug report #2416182 titled "crash in ConnectionExists when using
duphandle+curl_mutli" (http://curl.haxx.se/bug/view.cgi?id=2416182) showed that curl_easy_duphandle() wrongly also copied the pointer to the connection cache, which was plain wrong and caused a segfault if the handle would be used in a different multi handle than the handle it was duplicated from.
Diffstat (limited to 'lib')
-rw-r--r--lib/easy.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/lib/easy.c b/lib/easy.c
index 2c2490142..ae669f9be 100644
--- a/lib/easy.c
+++ b/lib/easy.c
@@ -624,13 +624,8 @@ CURL *curl_easy_duphandle(CURL *incurl)
if(Curl_dupset(outcurl, data) != CURLE_OK)
break;
- if(data->state.used_interface == Curl_if_multi)
- outcurl->state.connc = data->state.connc;
- else
- outcurl->state.connc = Curl_mk_connc(CONNCACHE_PRIVATE, -1);
-
- if(!outcurl->state.connc)
- break;
+ /* the connection cache is setup on demand */
+ outcurl->state.connc = NULL;
outcurl->state.lastconnect = -1;