Kaydet (Commit) 3d0b9f09 authored tarafından Brett Cannon's avatar Brett Cannon

dummy_thread.acquire() would return None if no waitflag argument was given. It

should have returned True.

Fixes issue #3339. Thanks, Henk Punt for the report and Andrii v. Mishkovskiyi
for attempting a patch.
üst 0522a9f1
......@@ -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
......
......@@ -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.
......
......@@ -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.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment