diff --git a/Lib/threading.py b/Lib/threading.py index 860c2fdd33c..61c25b65344 100644 --- a/Lib/threading.py +++ b/Lib/threading.py @@ -653,6 +653,7 @@ class _DummyThread(Thread): def __init__(self): Thread.__init__(self, name=_newname("Dummy-%d")) + del self._Thread__block self._Thread__started = True _active_limbo_lock.acquire() _active[_get_ident()] = self diff --git a/Misc/NEWS b/Misc/NEWS index d7b35d51678..8d00f22a643 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -33,6 +33,11 @@ Extension Modules Library ------- +- _DummyThread objects in the threading module now delete self.__block that is + inherited from _Thread since it uses up a lock allocated by 'thread'. The + lock primitives tend to be limited in number and thus should not be wasted on + a _DummyThread object. Fixes bug #1089632. + - The imghdr module now detects Exif files. - StringIO.truncate() now correctly adjusts the size attribute.