Vladimir Matveev <desco...@gmail.com> added the comment:

I agree. From code in threading.Condition.wait looks like if it is interrupted 
either after calling _release_save and before entering try block or in finally 
block before calling _acquire_restore - it will leave the lock in non-acquired 
state. 

First part in theory can be solved if _release_save is moved into try block and 
instead of returning saved_state as a result it will accept reference to 
saved_state local and set it in C code.

Second part looks more interesting ... :)

----------
nosy: +v2m

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

Reply via email to