Python 3 - Use universal_newlines=True in subprocess.Popen.
This follows the spirit of a previous patch which did essentially the same thing. In Python 3, when you use Popen.communicate(), you get back a bytes object which cannot normally be treated as a string. We could decode this manually, but universal_newlines=True does this automatically, and there's no disadvantage to doing so even on Python 2. So just enable it always. llvm-svn: 252126
This commit is contained in:
parent
edcc92a4c1
commit
5167115cf6
|
@ -271,6 +271,7 @@ class UnixProcessHelper(ProcessHelper):
|
|||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE,
|
||||
universal_newlines=True, # Elicits automatic byte -> string decoding in Py3
|
||||
close_fds=True,
|
||||
preexec_fn=preexec_func)
|
||||
|
||||
|
@ -383,6 +384,7 @@ class WindowsProcessHelper(ProcessHelper):
|
|||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE,
|
||||
universal_newlines=True, # Elicits automatic byte -> string decoding in Py3
|
||||
creationflags=creation_flags)
|
||||
|
||||
def was_hard_terminate(self, returncode):
|
||||
|
|
Loading…
Reference in New Issue