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.
This commit is contained in:
Jeffrey Yasskin 2008-03-21 05:51:37 +00:00
parent cf26f5419e
commit 6cda88ea11
1 changed files with 4 additions and 2 deletions

View File

@ -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