BUG/MEDIUM: mux-h2: stop sending using HTX on errors
We didn't take care of the stream error in the HTX send loop, causing
some errors (like buffer full) to provoke 100% CPU.
No backport is needed.
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 0eb5fd2..06ee7d7 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -4612,7 +4612,8 @@
}
if (htx) {
- while (!(h2s->flags & H2_SF_BLK_ANY) && count && !htx_is_empty(htx)) {
+ while (h2s->st < H2_SS_ERROR && !(h2s->flags & H2_SF_BLK_ANY) &&
+ count && !htx_is_empty(htx)) {
idx = htx_get_head(htx);
blk = htx_get_blk(htx, idx);
btype = htx_get_blk_type(blk);