Fixes Brian Akins' reported problems with duplicate Host: headers on re-used
authorDaniel Stenberg <daniel@haxx.se>
Wed, 28 Jul 2004 21:13:29 +0000 (21:13 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 28 Jul 2004 21:13:29 +0000 (21:13 +0000)
connections.

lib/http.c

index d1128d4..4b3e7df 100644 (file)
@@ -1351,6 +1351,8 @@ CURLcode Curl_http(struct connectdata *conn)
     }
   }
 
+  Curl_safefree(conn->allocptr.host);
+
   ptr = checkheaders(data, "Host:");
   if(ptr && !data->state.this_is_a_follow) {
     /* If we have a given custom Host: header, we extract the host name in
@@ -1374,10 +1376,10 @@ CURLcode Curl_http(struct connectdata *conn)
       memcpy(conn->allocptr.cookiehost, start, len);
       conn->allocptr.cookiehost[len]=0;
     }
+
+    conn->allocptr.host = NULL;
   }
   else {
-    Curl_safefree(conn->allocptr.host);
-
     /* When building Host: headers, we must put the host name within
        [brackets] if the host name is a plain IPv6-address. RFC2732-style. */