BUG/MINOR: mux-h1: Don't emit extra CRLF for empty chunked messages
Because of a buggy tests when processing the EOH HTX block, an extra CRLF is
added for empty chunked messages. This bug was introduced by the commit
d1ac2b90c ("MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM
instead").
This fix is specific for 2.4. No backport needed.
diff --git a/src/mux_h1.c b/src/mux_h1.c
index 3837f7a..a480d42 100644
--- a/src/mux_h1.c
+++ b/src/mux_h1.c
@@ -2082,8 +2082,10 @@
else {
/* EOM flag is set and it is the last block */
if (htx_is_unique_blk(chn_htx, blk) && (chn_htx->flags & HTX_FL_EOM)) {
- if ((h1m->flags & H1_MF_CHNK) && !chunk_memcat(&tmp, "\r\n0\r\n\r\n", 7))
- goto full;
+ if (h1m->flags & H1_MF_CHNK) {
+ if (!chunk_memcat(&tmp, "\r\n0\r\n\r\n", 7))
+ goto full;
+ }
else if (!chunk_memcat(&tmp, "\r\n", 2))
goto full;
goto done;