BUILD: stream: fix build warning with older compilers

GCC 6 was not very good at value propagation and is often mislead about
risks of null derefs. Since 2.6-dev commit 13a35e575 ("MAJOR: conn_stream/
stream-int: move the appctx to the conn-stream"), it sees a risk of null-
deref in stream_upgrade_from_cs() after checking cs_conn_mux(cs). Let's
disguise the result so that it doesn't complain anymore. The output code
is exactly the same. The same method could be used to shut warnings at
-O1 that affect the same compiler by the way.
This commit is contained in:
Willy Tarreau 2022-02-24 19:35:05 +01:00
parent 119965f15e
commit c72d2c7e5b

View File

@ -278,7 +278,7 @@ int stream_upgrade_from_cs(struct conn_stream *cs, struct buffer *input)
struct stream *s = cs_strm(cs); struct stream *s = cs_strm(cs);
if (cs_conn_mux(cs)) { if (cs_conn_mux(cs)) {
const struct mux_ops *mux = cs_conn_mux(cs); const struct mux_ops *mux = DISGUISE(cs_conn_mux(cs));
if (mux->flags & MX_FL_HTX) if (mux->flags & MX_FL_HTX)
s->flags |= SF_HTX; s->flags |= SF_HTX;