Show More
@@ -17,6 +17,7 b' of subprocess utilities, and it contains tools that are common to all of them.' | |||
|
17 | 17 | import subprocess |
|
18 | 18 | import shlex |
|
19 | 19 | import sys |
|
20 | import os | |
|
20 | 21 | |
|
21 | 22 | from IPython.utils import py3compat |
|
22 | 23 | |
@@ -69,7 +70,14 b' def process_handler(cmd, callback, stderr=subprocess.PIPE):' | |||
|
69 | 70 | sys.stderr.flush() |
|
70 | 71 | # On win32, close_fds can't be true when using pipes for stdin/out/err |
|
71 | 72 | close_fds = sys.platform != 'win32' |
|
72 | p = subprocess.Popen(cmd, shell=isinstance(cmd, py3compat.string_types), | |
|
73 | # Determine if cmd should be run with system shell. | |
|
74 | shell = isinstance(cmd, py3compat.string_types) | |
|
75 | # On POSIX systems run shell commands with user-preferred shell. | |
|
76 | executable = None | |
|
77 | if shell and os.name == 'posix' and 'SHELL' in os.environ: | |
|
78 | executable = os.environ['SHELL'] | |
|
79 | p = subprocess.Popen(cmd, shell=shell, | |
|
80 | executable=executable, | |
|
73 | 81 | stdin=subprocess.PIPE, |
|
74 | 82 | stdout=subprocess.PIPE, |
|
75 | 83 | stderr=stderr, |
General Comments 0
You need to be logged in to leave comments.
Login now