MINOR: h2: also terminate the connection on shutr

It happens that an H2 mux is totally unusable once the client has shut,
so we must consider this situation equivalent to the connection error,
and let the possible streams drain their data if needed then stop.
This commit is contained in:
Willy Tarreau 2017-10-09 16:47:04 +02:00
parent fbe3b4fcbe
commit 26bd761f01

View File

@ -703,7 +703,8 @@ static int h2_wake(struct connection *conn)
{
struct h2c *h2c = conn->mux_ctx;
if (conn->flags & CO_FL_ERROR || h2c->st0 == H2_CS_ERROR2) {
if (conn->flags & CO_FL_ERROR || conn_xprt_read0_pending(conn) ||
h2c->st0 == H2_CS_ERROR2) {
h2_wake_all_streams(h2c);
if (eb_is_empty(&h2c->streams_by_id)) {