http2: call done_sending on end of upload

To make sure a HTTP/2 stream registers the end of stream.

Bug #4043 made me find this problem but this fix doesn't correct the
reported issue.

Closes #4068
This commit is contained in:
Daniel Stenberg 2019-06-24 11:21:26 +02:00
parent d331227cf0
commit 265f7f42f6
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
4 changed files with 15 additions and 6 deletions

View file

@ -3511,8 +3511,10 @@ CURLcode Curl_http_readwrite_headers(struct Curl_easy *data,
else {
infof(data, "HTTP error before end of send, stop sending\n");
streamclose(conn, "Stop sending data before everything sent");
result = Curl_done_sending(conn, k);
if(result)
return result;
k->upload_done = TRUE;
k->keepon &= ~KEEP_SEND; /* don't send */
if(data->state.expect100header)
k->exp100 = EXP100_FAILED;
}