mirror of
https://github.com/apache/httpd.git
synced 2025-08-20 14:14:48 +00:00
*) mod_http2: fixed a bug in flushing pending data on an already closed
connection that could lead to a busy loop, preventing the HTTP/2 session to close down successfully. Fixed PR 66624. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1910331 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
4
changes-entries/h2_flush_fix.txt
Normal file
4
changes-entries/h2_flush_fix.txt
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
*) mod_http2: fixed a bug in flushing pending data on an already closed
|
||||||
|
connection that could lead to a busy loop, preventing the HTTP/2 session
|
||||||
|
to close down successfully. Fixed PR 66624.
|
||||||
|
[Stefan Eissing]
|
@ -1281,8 +1281,11 @@ static apr_status_t h2_session_send(h2_session *session)
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (h2_c1_io_needs_flush(&session->io)) {
|
if (h2_c1_io_needs_flush(&session->io) ||
|
||||||
|
ngrv == NGHTTP2_ERR_WOULDBLOCK) {
|
||||||
rv = h2_c1_io_assure_flushed(&session->io);
|
rv = h2_c1_io_assure_flushed(&session->io);
|
||||||
|
if (rv != APR_SUCCESS)
|
||||||
|
goto cleanup;
|
||||||
pending = 0;
|
pending = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user