Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé.
This commit is contained in:
parent
a9c99a6119
commit
be9c841494
|
@ -3,6 +3,7 @@
|
|||
|
||||
import os
|
||||
import time
|
||||
import sys
|
||||
from test.fork_wait import ForkWait
|
||||
from test.support import run_unittest, reap_children, get_attribute
|
||||
|
||||
|
@ -13,10 +14,15 @@ get_attribute(os, 'wait4')
|
|||
|
||||
class Wait4Test(ForkWait):
|
||||
def wait_impl(self, cpid):
|
||||
option = os.WNOHANG
|
||||
if sys.platform.startswith('aix'):
|
||||
# Issue #11185: wait4 is broken on AIX and will always return 0
|
||||
# with WNOHANG.
|
||||
option = 0
|
||||
for i in range(10):
|
||||
# wait4() shouldn't hang, but some of the buildbots seem to hang
|
||||
# in the forking tests. This is an attempt to fix the problem.
|
||||
spid, status, rusage = os.wait4(cpid, os.WNOHANG)
|
||||
spid, status, rusage = os.wait4(cpid, option)
|
||||
if spid == cpid:
|
||||
break
|
||||
time.sleep(1.0)
|
||||
|
|
Loading…
Reference in New Issue