summaryrefslogtreecommitdiffstats
path: root/Lib/asyncio/locks.py
diff options
context:
space:
mode:
authorGuido van Rossum <guido@dropbox.com>2013-11-21 19:07:45 (GMT)
committerGuido van Rossum <guido@dropbox.com>2013-11-21 19:07:45 (GMT)
commit9c55a58a1d7f664e7d236ef690d17409841632c4 (patch)
tree6c8ad2caefedc542eaebed256d83eec2a5dde545 /Lib/asyncio/locks.py
parentd88c6f9b9bae5aecdcedecf9185aff9a31bf6c4f (diff)
downloadcpython-9c55a58a1d7f664e7d236ef690d17409841632c4.zip
cpython-9c55a58a1d7f664e7d236ef690d17409841632c4.tar.gz
cpython-9c55a58a1d7f664e7d236ef690d17409841632c4.tar.bz2
asyncio: Make Semaphore(0) work properly.
Diffstat (limited to 'Lib/asyncio/locks.py')
-rw-r--r--Lib/asyncio/locks.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/Lib/asyncio/locks.py b/Lib/asyncio/locks.py
index ac851e5..dd9f0f8 100644
--- a/Lib/asyncio/locks.py
+++ b/Lib/asyncio/locks.py
@@ -348,12 +348,12 @@ class Semaphore:
def __init__(self, value=1, bound=False, *, loop=None):
if value < 0:
- raise ValueError("Semaphore initial value must be > 0")
+ raise ValueError("Semaphore initial value must be >= 0")
self._value = value
self._bound = bound
self._bound_value = value
self._waiters = collections.deque()
- self._locked = False
+ self._locked = (value == 0)
if loop is not None:
self._loop = loop
else: