From be9c8414945dc15c079d07a0b84597142ea41511 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Thu, 4 Jul 2013 21:03:10 +0200 Subject: [PATCH] =?utf8?q?Issue=20#11185:=20Fix=20test=5Fwait4=20under=20A?= =?utf8?q?IX.=20=20Patch=20by=20S=C3=A9bastien=20Sabl=C3=A9.?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- Lib/test/test_wait4.py | 8 +++++++- Misc/NEWS | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_wait4.py b/Lib/test/test_wait4.py index cdcd0604b7..352c11aade 100644 --- a/Lib/test/test_wait4.py +++ b/Lib/test/test_wait4.py @@ -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) diff --git a/Misc/NEWS b/Misc/NEWS index ca83f114f0..515cb8d82e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -155,6 +155,8 @@ IDLE Tests ----- +- Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé. + - Issue #17691: test_univnewlines now works with unittest test discovery. Patch by Zachary Ware. -- 2.40.0