]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM: mt_lists: Make sure we set the deleted element to NULL;
authorOlivier Houchard <ohouchard@haproxy.com>
Tue, 10 Mar 2020 16:41:53 +0000 (17:41 +0100)
committerOlivier Houchard <cognet@ci0.org>
Tue, 10 Mar 2020 16:45:05 +0000 (17:45 +0100)
In MT_LIST_DEL_SAFE(), when the code was changed to use a temporary variable
instead of using the provided pointer directly, we shouldn't have changed
the code that set the pointer to NULL, as we really want the pointer
provided to be nullified, otherwise other parts of the code won't know
we just deleted an element, and bad things will happen.

This should be backported to 2.1.

include/common/mini-clist.h

index 19b59fd487552ee6647197aecffdefb790804763..9736d13ea855ae19a420c47b1b1c83cad68382ca 100644 (file)
@@ -620,7 +620,7 @@ struct cond_wordlist {
                struct mt_list *el = (_el);                                \
                (el)->prev = (el);                                         \
                (el)->next = (el);                                         \
-               (el) = NULL;                                               \
+               (_el) = NULL;                                              \
        } while (0)
 
 /* Simpler FOREACH_ITEM_SAFE macro inspired from Linux sources.