[Python-checkins] cpython: Issue #8533: regrtest replaces also sys.stdout on Windows
victor.stinner
python-checkins at python.org
Wed May 25 02:02:56 CEST 2011
http://hg.python.org/cpython/rev/8be9eaf5829f
changeset: 70366:8be9eaf5829f
user: Victor Stinner <victor.stinner at haypocalc.com>
date: Wed May 25 02:01:55 2011 +0200
summary:
Issue #8533: regrtest replaces also sys.stdout on Windows
Replace sys.stdout to use backslashreplace. Use '\n' newline on all operating
systems.
files:
Lib/test/regrtest.py | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -794,17 +794,14 @@
def replace_stdout():
"""Set stdout encoder error handler to backslashreplace (as stderr error
handler) to avoid UnicodeEncodeError when printing a traceback"""
- if os.name == "nt":
- # Replace sys.stdout breaks the stdout newlines on Windows: issue #8533
- return
-
import atexit
stdout = sys.stdout
sys.stdout = open(stdout.fileno(), 'w',
encoding=stdout.encoding,
errors="backslashreplace",
- closefd=False)
+ closefd=False,
+ newline='\n')
def restore_stdout():
sys.stdout.close()
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list