Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

http2: fix handling of client-initiated "done" #8664

Closed
wants to merge 3 commits into from

Conversation

bagder
Copy link
Member

@bagder bagder commented Apr 1, 2022

When libcurl decides to "simulate" a 304 response due to time condition, there were several small mistakes made. One of which in particular caused #8626

As it could otherwise stall all streams on the connection

Reported-by: Evangelos Foutras
Fixes #8626
For the "simulated 304" case the done-call isn't considered "premature"
but since the server didn't close the stream it needs to be reset to
stop delivering data.
@bagder bagder added the HTTP/2 label Apr 1, 2022
@bagder bagder linked an issue Apr 1, 2022 that may be closed by this pull request
@bagder bagder closed this in b5a9680 Apr 1, 2022
bagder added a commit that referenced this pull request Apr 1, 2022
For the "simulated 304" case the done-call isn't considered "premature"
but since the server didn't close the stream it needs to be reset to
stop delivering data.

Closes #8664
@bagder bagder deleted the bagder/http2-done-paused branch April 1, 2022 11:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

cURL multi transfers not terminating with HTTP2 + future time condition
1 participant