]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
fix race in ISC_QUEUE_PUSH v9.9.1-P2
authorEvan Hunt <each@isc.org>
Thu, 12 Jul 2012 20:57:58 +0000 (13:57 -0700)
committerEvan Hunt <each@isc.org>
Thu, 12 Jul 2012 20:57:58 +0000 (13:57 -0700)
CHANGES
lib/isc/include/isc/queue.h

diff --git a/CHANGES b/CHANGES
index 83b401a2257decc57bca70f9683108b9ac4f0f49..2bf9dd00df033ce83fd3851b083e1b002e8746e9 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,7 @@
        --- 9.9.1-P2 released ---
 
+3349.  [bug]           Change #3345 was incomplete. [RT #30233]
+
 3346.  [security]      Bad-cache data could be used before it was
                        initialized, causing an assert. [RT #30025]
 
index 6f76bd2750efb1f0592602699c8938751c54c28e..1bc9d5b4d17a88501572fb1fa6fef8f8e5d78d94 100644 (file)
                        LOCK(&(queue).taillock); \
                        headlocked = ISC_TRUE; \
                } \
-               if ((queue).tail != NULL) \
-                       (queue).tail->link.next = (elt); \
                (elt)->link.prev = (queue).tail; \
                (elt)->link.next = NULL; \
+               if ((queue).tail != NULL) \
+                       (queue).tail->link.next = (elt); \
                (queue).tail = (elt); \
                UNLOCK(&(queue).taillock); \
                if (headlocked) { \