diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2017-02-02 19:17:51 +0000 |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2017-02-02 19:17:51 +0000 |
commit | b8cf82474245d48753ae34b76a272d5120895add (patch) | |
tree | 8bec37e99a342ac40fc8a0619897feaad7615061 /Lib/subprocess.py | |
parent | 474ecf16ed434144efc0e1de383efda76f011e3f (diff) | |
parent | 14593e19e199dd34f268b35987ddb288bf022039 (diff) | |
download | cpython-b8cf82474245d48753ae34b76a272d5120895add.tar.gz |
Closes #24875: Merged fix from 3.6.
Diffstat (limited to 'Lib/subprocess.py')
-rw-r--r-- | Lib/subprocess.py | 29 |
1 files changed, 8 insertions, 21 deletions
diff --git a/Lib/subprocess.py b/Lib/subprocess.py index 822ddb459e..67b9c9f1b1 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -1027,15 +1027,9 @@ class Popen(object): return self.returncode - def wait(self, timeout=None, endtime=None): + def wait(self, timeout=None): """Wait for child process to terminate. Returns returncode attribute.""" - if endtime is not None: - warnings.warn( - "'endtime' argument is deprecated; use 'timeout'.", - DeprecationWarning, - stacklevel=2) - timeout = self._remaining_time(endtime) if timeout is None: timeout_millis = _winapi.INFINITE else: @@ -1210,7 +1204,10 @@ class Popen(object): args = list(args) if shell: - args = ["/bin/sh", "-c"] + args + # On Android the default shell is at '/system/bin/sh'. + unix_shell = ('/system/bin/sh' if + hasattr(sys, 'getandroidapilevel') else '/bin/sh') + args = [unix_shell, "-c"] + args if executable: args[0] = executable @@ -1393,24 +1390,14 @@ class Popen(object): return (pid, sts) - def wait(self, timeout=None, endtime=None): + def wait(self, timeout=None): """Wait for child process to terminate. Returns returncode attribute.""" if self.returncode is not None: return self.returncode - if endtime is not None: - warnings.warn( - "'endtime' argument is deprecated; use 'timeout'.", - DeprecationWarning, - stacklevel=2) - if endtime is not None or timeout is not None: - if endtime is None: - endtime = _time() + timeout - elif timeout is None: - timeout = self._remaining_time(endtime) - - if endtime is not None: + if timeout is not None: + endtime = _time() + timeout # Enter a busy loop if we have a timeout. This busy loop was # cribbed from Lib/threading.py in Thread.wait() at r71065. delay = 0.0005 # 500 us -> initial delay of 1 ms |