From: Amaury Denoyelle Date: Mon, 21 Feb 2022 17:38:29 +0000 (+0100) Subject: MINOR: h3: fix compiler warning variable set but not used X-Git-Tag: v2.6-dev2~99 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ff191de1ca0102f1e1926ba261fb99d96d304cb7;p=thirdparty%2Fhaproxy.git MINOR: h3: fix compiler warning variable set but not used Some variables were only checked via BUG_ON macro. If compiling without DEBUG_STRICT, this instruction is a noop. Fix this by using an explicit condition + ABORT_NOW. This should fix the github issue #1549. --- diff --git a/src/h3.c b/src/h3.c index 5f2757ff8b..965812e777 100644 --- a/src/h3.c +++ b/src/h3.c @@ -211,11 +211,14 @@ static int h3_data_to_htx(struct qcs *qcs, struct buffer *buf, uint64_t len, htx = htx_from_buf(appbuf); htx_space = htx_free_data_space(htx); - BUG_ON(!htx_space || htx_space < len); + if (!htx_space || htx_space < len) { + ABORT_NOW(); /* TODO handle this case properly */ + } htx_sent = htx_add_data(htx, ist2(b_head(buf), len)); - /* TODO handle full appbuf */ - BUG_ON(htx_sent < len); + if (htx_sent < len) { + ABORT_NOW(); /* TODO handle this case properly */ + } if (fin) htx->flags |= HTX_FL_EOM; @@ -264,12 +267,12 @@ static int h3_decode_qcs(struct qcs *qcs, int fin, void *ctx) case H3_FT_DATA: ret = h3_data_to_htx(qcs, rxbuf, flen, last_stream_frame); /* TODO handle error reporting. Stream closure required. */ - BUG_ON(ret); + if (ret) { ABORT_NOW(); } break; case H3_FT_HEADERS: ret = h3_headers_to_htx(qcs, rxbuf, flen, last_stream_frame); /* TODO handle error reporting. Stream closure required. */ - BUG_ON(ret); + if (ret) { ABORT_NOW(); } break; case H3_FT_PUSH_PROMISE: /* Not supported */