From e85db2bbb84ba90c03022860f76ca3cdcdf199c6 Mon Sep 17 00:00:00 2001 From: "Gregory P. Smith" Date: Tue, 14 Dec 2010 14:38:00 +0000 Subject: Issue #1731717: Fixed the problem where subprocess.wait() could cause an OSError exception when The OS had been told to ignore SIGCLD in our process or otherwise not wait for exiting child processes. --- Lib/test/subprocessdata/sigchild_ignore.py | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Lib/test/subprocessdata/sigchild_ignore.py (limited to 'Lib/test/subprocessdata') diff --git a/Lib/test/subprocessdata/sigchild_ignore.py b/Lib/test/subprocessdata/sigchild_ignore.py new file mode 100644 index 0000000000..1d03303e44 --- /dev/null +++ b/Lib/test/subprocessdata/sigchild_ignore.py @@ -0,0 +1,6 @@ +import signal, subprocess, sys +# On Linux this causes os.waitpid to fail with OSError as the OS has already +# reaped our child process. The wait() passing the OSError on to the caller +# and causing us to exit with an error is what we are testing against. +signal.signal(signal.SIGCLD, signal.SIG_IGN) +subprocess.Popen([sys.executable, '-c', 'print("albatross")']).wait() -- cgit v1.2.1