summaryrefslogtreecommitdiffstats
path: root/Lib/test/_test_multiprocessing.py
diff options
context:
space:
mode:
authorRichard Oudkerk <shibturn@gmail.com>2013-10-17 14:22:10 (GMT)
committerRichard Oudkerk <shibturn@gmail.com>2013-10-17 14:22:10 (GMT)
commitcc5c728513a5bb8850591fba870a380573f4e078 (patch)
treea57414dea956b0b9df0195555664068180cddcfa /Lib/test/_test_multiprocessing.py
parent240f86d7ddbeb3800d39a6d2e6e7a7d1f0c49799 (diff)
downloadcpython-cc5c728513a5bb8850591fba870a380573f4e078.zip
cpython-cc5c728513a5bb8850591fba870a380573f4e078.tar.gz
cpython-cc5c728513a5bb8850591fba870a380573f4e078.tar.bz2
Fix signal handler in test.
Diffstat (limited to 'Lib/test/_test_multiprocessing.py')
-rw-r--r--Lib/test/_test_multiprocessing.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py
index d02106d..993c875 100644
--- a/Lib/test/_test_multiprocessing.py
+++ b/Lib/test/_test_multiprocessing.py
@@ -354,12 +354,16 @@ class _TestProcess(BaseTestCase):
else:
os.kill(pid, signal.SIGTERM)
def handler(*args):
- raise RuntimeError('join took too long: %s' % p)
+ raise RuntimeError('waitpid() took too long')
old_handler = signal.signal(signal.SIGALRM, handler)
try:
signal.alarm(10)
pid_status = os.waitpid(pid, 0)
self.assertEqual(pid_status[0], pid)
+ except RuntimeError:
+ print('os.waitpid() =',
+ os.waitpid(pid, os.WNOHANG), file=sys.stderr)
+ raise
finally:
signal.alarm(0)
signal.signal(signal.SIGALRM, old_handler)