Antoine Pitrou <pit...@free.fr> added the comment:

I think the fix to Christian's issue is just:

Index: Lib/threading.py
===================================================================
--- Lib/threading.py    (révision 79470)
+++ Lib/threading.py    (copie de travail)
@@ -579,7 +579,7 @@
                 try:
                     # We don't call self.__delete() because it also
                     # grabs _active_limbo_lock.
-                    del _active[_get_ident()]
+                    del _active[self.__ident]
                 except:
                     pass
 
@@ -615,7 +615,7 @@
 
         try:
             with _active_limbo_lock:
-                del _active[_get_ident()]
+                del _active[self.__ident]
                 # There must not be any python code between the previous line
                 # and after the lock is released.  Otherwise a tracing function
                 # could try to acquire the lock again in the same thread, (in


Now we just need to add a test for it in test_threading.
And, yes, Amaury's test case looks like a different issue.

----------
nosy: +pitrou

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue1596321>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to