diff options
author | Jeffrey Yasskin <jyasskin@gmail.com> | 2008-03-21 05:51:37 (GMT) |
---|---|---|
committer | Jeffrey Yasskin <jyasskin@gmail.com> | 2008-03-21 05:51:37 (GMT) |
commit | 6cda88ea11e5434e8292ce28ce18679f929d01e4 (patch) | |
tree | 0012f1cce46b18a9997406a7e801be650a7f0a76 /Lib/test/test_signal.py | |
parent | cf26f5419e51a62ae796369ecece8019688f94f4 (diff) | |
download | cpython-6cda88ea11e5434e8292ce28ce18679f929d01e4.zip cpython-6cda88ea11e5434e8292ce28ce18679f929d01e4.tar.gz cpython-6cda88ea11e5434e8292ce28ce18679f929d01e4.tar.bz2 |
Try to fix test_signal breakages on Linux due to r61687. It appears that at
least two of the linux build bots aren't leaving zombie processes around for
os.waitpid to wait for, causing ECHILD errors. This would be a symptom of a bug
somewhere, but probably not in signal itself.
Diffstat (limited to 'Lib/test/test_signal.py')
-rw-r--r-- | Lib/test/test_signal.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py index 76574af..b0195d7 100644 --- a/Lib/test/test_signal.py +++ b/Lib/test/test_signal.py @@ -44,9 +44,11 @@ class InterProcessSignalTests(unittest.TestCase): """Wait for child_pid to finish, ignoring EINTR.""" while True: try: - pid, status = os.waitpid(child_pid, 0) - return status + os.waitpid(child_pid, 0) + return except OSError as e: + if e.errno == errno.ECHILD: + return if e.errno != errno.EINTR: raise |