diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2010-09-25 17:48:25 +0000 |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2010-09-25 17:48:25 +0000 |
commit | d0e1763ae6f014ae1dd27deacf6b3f7d559cac8f (patch) | |
tree | a9784a058bc0146335f178fd0df07e02d5a50b57 /Lib/logging | |
parent | 00321f835f3c3d44d5445a997421bf8715cb2f97 (diff) | |
download | cpython-d0e1763ae6f014ae1dd27deacf6b3f7d559cac8f.tar.gz |
Issue #9947: logging: Fixed locking bug in stopListening.
Diffstat (limited to 'Lib/logging')
-rw-r--r-- | Lib/logging/config.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Lib/logging/config.py b/Lib/logging/config.py index 356183f5ed..258cc9c31c 100644 --- a/Lib/logging/config.py +++ b/Lib/logging/config.py @@ -895,8 +895,10 @@ def stopListening(): Stop the listening server which was created with a call to listen(). """ global _listener - if _listener: - logging._acquireLock() - _listener.abort = 1 - _listener = None + logging._acquireLock() + try: + if _listener: + _listener.abort = 1 + _listener = None + finally: logging._releaseLock() |