From: Gregory P. Smith Date: Sun, 11 Nov 2012 08:04:13 +0000 (-0800) Subject: Remove the subprocess "bad exception data" warning (formerly a print!) X-Git-Tag: v3.3.1rc1~648^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3aee2221229b9802dcc27b2709d5e97918b8ad46;p=python Remove the subprocess "bad exception data" warning (formerly a print!) all together and just include the repr of the data in the exception itself instead of the useless string "Unknown". This code path is unlikely to even be possible to take given the nature of the pipe it gets subprocess data from. --- diff --git a/Lib/subprocess.py b/Lib/subprocess.py index 18e9ed73a8..fcc3e6e3ba 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -1371,11 +1371,10 @@ class Popen(object): exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) except ValueError: - warnings.warn(RuntimeWarning( - 'Bad exception data: %r' % errpipe_data)) exception_name = b'RuntimeError' hex_errno = b'0' - err_msg = b'Unknown' + err_msg = (b'Bad exception data from child: ' + + repr(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), RuntimeError) diff --git a/Misc/NEWS b/Misc/NEWS index 16bfb3019b..49d6a1a386 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -162,6 +162,9 @@ Core and Builtins Library ------- +- Remove a bare print to stdout from the subprocess module that could have + happened if the child process wrote garbage to its pre-exec error pipe. + - Issue #16327: The subprocess module no longer leaks file descriptors used for stdin/stdout/stderr pipes to the child when fork() fails.