summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_signal.py
diff options
context:
space:
mode:
authorJeffrey Yasskin <jyasskin@gmail.com>2008-03-21 05:51:37 (GMT)
committerJeffrey Yasskin <jyasskin@gmail.com>2008-03-21 05:51:37 (GMT)
commit6cda88ea11e5434e8292ce28ce18679f929d01e4 (patch)
tree0012f1cce46b18a9997406a7e801be650a7f0a76 /Lib/test/test_signal.py
parentcf26f5419e51a62ae796369ecece8019688f94f4 (diff)
downloadcpython-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.py6
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