BUG/MEDIUM: mux-h2: properly abort on trailers decoding errors
There was an incomplete test in h2c_frt_handle_headers() resulting
in negative return values from h2c_decode_headers() not being taken
as errors. The effect is that the stream is then aborted on timeout
only.
This fix must be backported to 1.9.
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 47f0e8c..4e128d0 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -1865,7 +1865,7 @@
if (h2s->st != H2_SS_IDLE) {
/* The stream exists/existed, this must be a trailers frame */
if (h2s->st != H2_SS_CLOSED) {
- if (!h2c_decode_headers(h2c, &h2s->rxbuf, &h2s->flags))
+ if (h2c_decode_headers(h2c, &h2s->rxbuf, &h2s->flags) <= 0)
goto out;
goto done;
}