diff --git a/src/flt_http_comp.c b/src/flt_http_comp.c index ce0dba17c..380366b06 100644 --- a/src/flt_http_comp.c +++ b/src/flt_http_comp.c @@ -255,10 +255,12 @@ comp_http_payload(struct stream *s, struct filter *filter, struct http_msg *msg, } if (htx_compression_buffer_end(st, &trash, 1) < 0) goto error; - blk = htx_add_data_before(htx, blk, ist2(b_head(&trash), b_data(&trash))); - if (!blk) - goto error; - to_forward += b_data(&trash); + if (b_data(&trash)) { + blk = htx_add_data_before(htx, blk, ist2(b_head(&trash), b_data(&trash))); + if (!blk) + goto error; + to_forward += b_data(&trash); + } msg->flags &= ~HTTP_MSGF_COMPRESSING; /* We let the mux add last empty chunk and empty trailers */ }