Print this page
5083 avoid undefined order of operations in assignments

@@ -695,11 +695,11 @@
          * Otherwise, if there are either no waiters, there may in fact be
          * pollers, so we do not signal in that case.
          */
         if (mblist->mbl_pollers > 0 && mblist->mbl_waiters > 0) {
                 /* flip the signal value */
-                mblist->mbl_signal = (++mblist->mbl_signal) % 2;
+                mblist->mbl_signal = (mblist->mbl_signal + 1) % 2;
         } else if (mblist->mbl_waiters > 0) {
                 mblist->mbl_signal = 1;
         } else {
                 mblist->mbl_signal = 0;
         }