diff options
Diffstat (limited to 'lib/http.c')
-rw-r--r-- | lib/http.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/http.c b/lib/http.c index 8d5b9a408..9817d72af 100644 --- a/lib/http.c +++ b/lib/http.c @@ -1443,7 +1443,10 @@ CURLcode Curl_http_done(struct connectdata *conn, CURLcode status, bool premature) { struct SessionHandle *data = conn->data; - struct HTTP *http =data->req.protop; + struct HTTP *http = data->req.protop; +#ifdef USE_NGHTTP2 + struct http_conn *httpc = &conn->proto.httpc; +#endif Curl_unencode_cleanup(conn); @@ -1482,6 +1485,10 @@ CURLcode Curl_http_done(struct connectdata *conn, free(http->push_headers); http->push_headers = NULL; } + if(http->stream_id) { + nghttp2_session_set_stream_user_data(httpc->h2, http->stream_id, 0); + http->stream_id = 0; + } #endif if(HTTPREQ_POST_FORM == data->set.httpreq) { |