diff --git a/src/mux_h1.c b/src/mux_h1.c index 32d1f79de..34a8d0385 100644 --- a/src/mux_h1.c +++ b/src/mux_h1.c @@ -1742,6 +1742,11 @@ static int h1_recv(struct h1c *h1c) if (h1c->wait_event.events & SUB_RETRY_RECV) return (b_data(&h1c->ibuf)); + if (h1c->flags & H1C_F_CS_WAIT_CONN) { + conn->xprt->subscribe(conn, conn->xprt_ctx, SUB_RETRY_RECV, &h1c->wait_event); + return 0; + } + if (!h1_recv_allowed(h1c)) { rcvd = 1; goto end;