diff options
author | Gregory P. Smith <greg@krypto.org> | 2012-11-11 07:33:17 (GMT) |
---|---|---|
committer | Gregory P. Smith <greg@krypto.org> | 2012-11-11 07:33:17 (GMT) |
commit | f44c9da16655395f57d3686cb4d82b651489a974 (patch) | |
tree | 590006943e408977bb81c9ab479938db22144170 | |
parent | 3d8e776cd932ff79fe181984cacce9ff8bcf3e4c (diff) | |
download | cpython-f44c9da16655395f57d3686cb4d82b651489a974.zip cpython-f44c9da16655395f57d3686cb4d82b651489a974.tar.gz cpython-f44c9da16655395f57d3686cb4d82b651489a974.tar.bz2 |
Rename a local variable for readability and change a "this can't
happen" print() call into a RuntimeWarning as it should've been in the
first place. Because nothing should ever cause unexpected stdout output.
-rw-r--r-- | Lib/subprocess.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Lib/subprocess.py b/Lib/subprocess.py index 7cd5a57..18e9ed7 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -1351,26 +1351,28 @@ class Popen(object): # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) - data = bytearray() + errpipe_data = bytearray() while True: part = _eintr_retry_call(os.read, errpipe_read, 50000) - data += part - if not part or len(data) > 50000: + errpipe_data += part + if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) - if data: + if errpipe_data: try: _eintr_retry_call(os.waitpid, self.pid, 0) except OSError as e: if e.errno != errno.ECHILD: raise try: - exception_name, hex_errno, err_msg = data.split(b':', 2) + exception_name, hex_errno, err_msg = ( + errpipe_data.split(b':', 2)) except ValueError: - print('Bad exception data:', repr(data)) + warnings.warn(RuntimeWarning( + 'Bad exception data: %r' % errpipe_data)) exception_name = b'RuntimeError' hex_errno = b'0' err_msg = b'Unknown' |