From: Victor Stinner Date: Fri, 20 May 2016 10:08:12 +0000 (+0200) Subject: Issue #26741: POSIX implementation of subprocess.Popen._execute_child() now X-Git-Tag: v3.6.0a2~258 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a58e2c5c4928ae8031ee60a97f2ab4f863aff8cb;p=thirdparty%2FPython%2Fcpython.git Issue #26741: POSIX implementation of subprocess.Popen._execute_child() now sets the returncode attribute using the child process exit status when exec failed. --- diff --git a/Lib/subprocess.py b/Lib/subprocess.py index 642c7f218223..41a9de10f5ef 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -1524,9 +1524,14 @@ class Popen(object): if errpipe_data: try: - os.waitpid(self.pid, 0) + pid, sts = os.waitpid(self.pid, 0) + if pid == self.pid: + self._handle_exitstatus(sts) + else: + self.returncode = sys.maxsize except ChildProcessError: pass + try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2))