summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2018-03-11 01:04:12 +0100
committerDaniel Stenberg <daniel@haxx.se>2018-03-11 01:04:12 +0100
commit7d5f3fb121a2f776df2b7b83efd1244da42057a8 (patch)
treecceba8ed45699630bc447f1b5b77dfaa3bf52fdd
parent3b4bc278c51cddd963a4bbcd63fb5f528d53c683 (diff)
downloadcurl-bagder/replace-internal-header-with-blank.tar.gz
fixup Connection: to repair testsbagder/replace-internal-header-with-blank
-rw-r--r--lib/http.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/lib/http.c b/lib/http.c
index a719cdd97..841f6cc0b 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -1930,14 +1930,15 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
Curl_safefree(conn->allocptr.te);
- cptr = Curl_copy_header_value(cptr);
- if(!cptr)
- return CURLE_OUT_OF_MEMORY;
+ if(cptr) {
+ cptr = Curl_copy_header_value(cptr);
+ if(!cptr)
+ return CURLE_OUT_OF_MEMORY;
+ }
/* Create the (updated) Connection: header */
- conn->allocptr.te = (cptr && *cptr) ?
- aprintf("%s, TE\r\n" TE_HEADER, cptr) :
- strdup("Connection: TE\r\n" TE_HEADER);
+ conn->allocptr.te = aprintf("Connection: %s%sTE\r\n" TE_HEADER,
+ cptr ? cptr : "", (cptr && *cptr) ? ", ":"");
free(cptr);
if(!conn->allocptr.te)