ngtcp2: deal with stream close

This commit is contained in:
Tatsuhiro Tsujikawa 2019-08-15 14:52:56 +09:00 committed by Daniel Stenberg
parent e42bd8a204
commit c47ef9115e
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2

View file

@ -1217,12 +1217,16 @@ static int cb_h3_stream_close(nghttp3_conn *conn, int64_t stream_id,
uint64_t app_error_code, void *user_data,
void *stream_user_data)
{
struct Curl_easy *data = stream_user_data;
struct HTTP *stream = data->req.protop;
(void)conn;
(void)stream_id;
(void)app_error_code;
(void)user_data;
(void)stream_user_data;
fprintf(stderr, "cb_h3_stream_close CALLED\n");
stream->closed = TRUE;
return 0;
}
@ -1481,6 +1485,11 @@ static ssize_t ngh3_stream_recv(struct connectdata *conn,
return stream->memlen;
}
if(stream->closed) {
*curlcode = CURLE_OK;
return 0;
}
infof(conn->data, "ngh3_stream_recv returns 0 bytes and EAGAIN\n");
*curlcode = CURLE_AGAIN;
return -1;