]> granicus.if.org Git - python/commitdiff
dummy_thread.acquire() would return None if no waitflag argument was given. It
authorBrett Cannon <bcannon@gmail.com>
Sun, 13 Jul 2008 01:15:07 +0000 (01:15 +0000)
committerBrett Cannon <bcannon@gmail.com>
Sun, 13 Jul 2008 01:15:07 +0000 (01:15 +0000)
should have returned True.

Fixes issue #3339. Thanks, Henk Punt for the report and Andrii v. Mishkovskiyi
for attempting a patch.

Lib/dummy_thread.py
Lib/test/test_dummy_thread.py
Misc/NEWS

index c1313846e48ca08ed5665c49de9ee77cd88a2f0d..16dcf7e9a2c69de7a5e186f07f424946d3263431 100644 (file)
@@ -104,18 +104,15 @@ class LockType(object):
         aren't triggered and throw a little fit.
 
         """
-        if waitflag is None:
+        if waitflag is None or waitflag:
             self.locked_status = True
-            return None
-        elif not waitflag:
+            return True
+        else:
             if not self.locked_status:
                 self.locked_status = True
                 return True
             else:
                 return False
-        else:
-            self.locked_status = True
-            return True
 
     __enter__ = acquire
 
index f274e0a0d0f6c8eea4f103be916acb4e6ec38804..58faeb42892d2d8878e4090e477005e4f0741b49 100644 (file)
@@ -60,6 +60,7 @@ class LockTests(unittest.TestCase):
         #Make sure that an unconditional locking returns True.
         self.failUnless(self.lock.acquire(1) is True,
                         "Unconditional locking did not return True.")
+        self.failUnless(self.lock.acquire() is True)
 
     def test_uncond_acquire_blocking(self):
         #Make sure that unconditional acquiring of a locked lock blocks.
index f026a09bbfb969d8a8b394da444e68212254dad9..ecd5567c0a56918f26b894ec6509ca4f9254619f 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,7 +10,6 @@ What's New in Python 2.6 beta 2?
 Core and Builtins
 -----------------
 
-
 - Issue #2517: Allow unicode messages in Exceptions again by correctly
   bypassing the instance dictionary when looking up __unicode__ on
   new-style classes.
@@ -41,6 +40,8 @@ Core and Builtins
 Library
 -------
 
+- Issue #3339: dummy_thread.acquire() should not return None.
+
 - Issue #3285: Fractions from_float() and from_decimal() accept Integral arguments.
 
 - Issue #3301: Bisect module behaved badly when lo was negative.