aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/http.c9
-rw-r--r--lib/url.c8
2 files changed, 9 insertions, 8 deletions
diff --git a/lib/http.c b/lib/http.c
index 567d16dd2..07354a1c4 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -1325,6 +1325,15 @@ CURLcode Curl_http(struct connectdata *conn)
if(data->set.cookie && !checkheaders(data, "Cookie:"))
addcookies = data->set.cookie;
+ if(!checkheaders(data, "Accept-Encoding:") &&
+ data->set.encoding) {
+ Curl_safefree(conn->allocptr.accept_encoding);
+ conn->allocptr.accept_encoding =
+ aprintf("Accept-Encoding: %s\015\012", data->set.encoding);
+ if(!conn->allocptr.accept_encoding)
+ return CURLE_OUT_OF_MEMORY;
+ }
+
if(!conn->bits.upload_chunky && (httpreq != HTTPREQ_GET)) {
/* not a chunky transfer yet, but data is to be sent */
ptr = checkheaders(data, "Transfer-Encoding:");
diff --git a/lib/url.c b/lib/url.c
index 23100fc13..8099688df 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -3348,14 +3348,6 @@ static CURLcode SetupConnection(struct connectdata *conn,
}
}
- if(data->set.encoding) {
- Curl_safefree(conn->allocptr.accept_encoding);
- conn->allocptr.accept_encoding =
- aprintf("Accept-Encoding: %s\015\012", data->set.encoding);
- if(!conn->allocptr.accept_encoding)
- return CURLE_OUT_OF_MEMORY;
- }
-
conn->bytecount = 0;
conn->headerbytecount = 0;