iconv-data needs to be fully reallocated (to prevent a double-free).
authorGisle Vanem <gvanem@broadpark.no>
Sat, 9 Sep 2006 18:23:29 +0000 (18:23 +0000)
committerGisle Vanem <gvanem@broadpark.no>
Sat, 9 Sep 2006 18:23:29 +0000 (18:23 +0000)
lib/easy.c

index 37c0c9a..0d64806 100644 (file)
@@ -613,9 +613,12 @@ CURL *curl_easy_duphandle(CURL *incurl)
 #endif
 
 #if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-  outcurl->outbound_cd = data->outbound_cd;
-  outcurl->inbound_cd  = data->inbound_cd;
-  outcurl->utf8_cd     = data->utf8_cd;
+    outcurl->inbound_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
+                                     CURL_ICONV_CODESET_OF_NETWORK);
+    outcurl->outbound_cd = iconv_open(CURL_ICONV_CODESET_OF_NETWORK,
+                                      CURL_ICONV_CODESET_OF_HOST);
+    outcurl->utf8_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
+                                  CURL_ICONV_CODESET_FOR_UTF8);
 #endif
 
     Curl_easy_initHandleData(outcurl);