summaryrefslogtreecommitdiff
path: root/Lib/subprocess.py
diff options
context:
space:
mode:
authorVinay Sajip <vinay_sajip@yahoo.co.uk>2017-02-02 19:17:51 +0000
committerVinay Sajip <vinay_sajip@yahoo.co.uk>2017-02-02 19:17:51 +0000
commitb8cf82474245d48753ae34b76a272d5120895add (patch)
tree8bec37e99a342ac40fc8a0619897feaad7615061 /Lib/subprocess.py
parent474ecf16ed434144efc0e1de383efda76f011e3f (diff)
parent14593e19e199dd34f268b35987ddb288bf022039 (diff)
downloadcpython-b8cf82474245d48753ae34b76a272d5120895add.tar.gz
Closes #24875: Merged fix from 3.6.
Diffstat (limited to 'Lib/subprocess.py')
-rw-r--r--Lib/subprocess.py29
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