diff options
Diffstat (limited to 'lib/transfer.c')
-rw-r--r-- | lib/transfer.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/transfer.c b/lib/transfer.c index ea6cfa357..330ba7df6 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -1116,6 +1116,12 @@ CURLcode Curl_readwrite(struct connectdata *conn, data->req.newurl = strdup(data->req.location); /* clone */ if(!data->req.newurl) return CURLE_OUT_OF_MEMORY; + + /* some cases of POST and PUT etc needs to rewind the data + stream at this point */ + result = Curl_http_perhapsrewind(conn); + if(result) + return result; } } } @@ -1570,6 +1576,7 @@ CURLcode Curl_readwrite(struct connectdata *conn, /* we've waited long enough, continue anyway */ k->exp100 = EXP100_SEND_DATA; k->keepon |= KEEP_WRITE; + infof(data, "Done waiting for 100-continue\n"); } } } |