]> granicus.if.org Git - python/commitdiff
Thread.__bootstrap(): ignore exceptions in the self.__delete() call in
authorGuido van Rossum <guido@python.org>
Fri, 28 Dec 2001 22:07:09 +0000 (22:07 +0000)
committerGuido van Rossum <guido@python.org>
Fri, 28 Dec 2001 22:07:09 +0000 (22:07 +0000)
the finally clause.  An exception here could happen when a daemon
thread exits after the threading module has already been trashed by
the import finalization, and there's not much of a point in trying to
insist doing the cleanup in that stage.

This should fix SF bug ##497111: active_limbo_lock error at program
exit.

2.1.2 and 2.2.1 Bugfix candidate!

Lib/threading.py

index fbf40cd04c6732103060987ae72aaac3f5625a57..6543cc36cbe73ef2bee617264b75c0166368053d 100644 (file)
@@ -421,7 +421,10 @@ class Thread(_Verbose):
                     self._note("%s.__bootstrap(): normal return", self)
         finally:
             self.__stop()
-            self.__delete()
+            try:
+                self.__delete()
+            except:
+                pass
 
     def __stop(self):
         self.__block.acquire()