diff --git a/src/mux_h2.c b/src/mux_h2.c index ad7c59f99..ff2d115f7 100644 --- a/src/mux_h2.c +++ b/src/mux_h2.c @@ -5212,7 +5212,7 @@ static int h2c_dec_hdrs(struct h2c *h2c, struct buffer *rxbuf, uint32_t *flags, b_sub(&h2c->dbuf, hole); } - if (b_full(&h2c->dbuf) && h2c->dfl) { + if (b_full(&h2c->dbuf) && h2c->dfl && (!htx || htx_is_empty(htx))) { /* too large frames */ h2c_error(h2c, H2_ERR_INTERNAL_ERROR); ret = -1;