]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MINOR: threads: fix multiple use of argument inside HA_ATOMIC_UPDATE_{MIN,MAX}()
authorWilly Tarreau <w@1wt.eu>
Tue, 5 May 2020 14:13:36 +0000 (16:13 +0200)
committerWilly Tarreau <w@1wt.eu>
Tue, 5 May 2020 14:18:52 +0000 (16:18 +0200)
commita4d9ee3d1cc7b321be420742263b67620036bb71
treeb579ca9a40170da19cf40f1f1197962fde2fd2bc
parentd66345d6b0639dfc42986a4326e6f6f6d18e053e
BUG/MINOR: threads: fix multiple use of argument inside HA_ATOMIC_UPDATE_{MIN,MAX}()

Just like in previous patch, it happens that HA_ATOMIC_UPDATE_MIN() and
HA_ATOMIC_UPDATE_MAX() would evaluate the (val) argument up to 3 times.
However this time it affects both thread and non-thread versions. It's
strange because the copy was properly performed for the (new) argument
in order to avoid this. Anyway it was done for the "val" one as well.

A quick code inspection showed that this currently has no effect as
these macros are fairly limited in usage.

It would be best to backport this for long-term stability (till 1.8)
but it will not fix an existing bug.
include/common/hathreads.h