From: Tim Peters Date: Sat, 26 Oct 2013 01:46:51 +0000 (-0500) Subject: Issue #19399: fix sporadic test_subprocess failure. X-Git-Tag: v3.4.0b1~533 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e5bb0bf04ded8ab623da08164c43059d3c68bd87;p=thirdparty%2FPython%2Fcpython.git Issue #19399: fix sporadic test_subprocess failure. Change Thread.join() with a negative timeout to just return. The behavior isn't documented then, but this restores previous behavior. --- diff --git a/Lib/threading.py b/Lib/threading.py index 185c980ce0da..0c92ab10d09f 100644 --- a/Lib/threading.py +++ b/Lib/threading.py @@ -1056,10 +1056,13 @@ class Thread: raise RuntimeError("cannot join thread before it is started") if self is current_thread(): raise RuntimeError("cannot join current thread") + if timeout is None: self._wait_for_tstate_lock() - else: + elif timeout >= 0: self._wait_for_tstate_lock(timeout=timeout) + # else it's a negative timeout - precise behavior isn't documented + # then, but historically .join() returned in this case def _wait_for_tstate_lock(self, block=True, timeout=-1): # Issue #18808: wait for the thread state to be gone. diff --git a/Misc/NEWS b/Misc/NEWS index a083cc3a3fe1..e7899fdc473b 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -27,6 +27,8 @@ Core and Builtins Library ------- +- Issue #19399: fix sporadic test_subprocess failure. + - Issue #13234: Fix os.listdir to work with extended paths on Windows. Patch by Santoso Wijaya.