BUG/MINOR: mux-h1: Always initilize h1m variable in h1_process_input()
It is used at the end of the function to know if the end of the message was
reached. So we must be sure to always initialize it.
This patch must be backported to 1.9.
diff --git a/src/mux_h1.c b/src/mux_h1.c
index a88722c..5978405 100644
--- a/src/mux_h1.c
+++ b/src/mux_h1.c
@@ -1323,11 +1323,6 @@
int errflag;
htx = htx_from_buf(buf);
- data = htx->data;
- count = b_data(&h1c->ibuf);
- if (!count)
- goto end;
- rsv = ((flags & CO_RFL_KEEP_RSV) ? global.tune.maxrewrite : 0);
if (!conn_is_back(h1c->conn)) {
h1m = &h1s->req;
@@ -1338,6 +1333,12 @@
errflag = H1S_F_RES_ERROR;
}
+ data = htx->data;
+ count = b_data(&h1c->ibuf);
+ if (!count)
+ goto end;
+ rsv = ((flags & CO_RFL_KEEP_RSV) ? global.tune.maxrewrite : 0);
+
do {
if (h1m->state <= H1_MSG_LAST_LF) {
ret = h1_process_headers(h1s, h1m, htx, &h1c->ibuf, &total, count);