[Python-checkins] bpo-33709: test_ntpath and test_posixpath fail in Windows with ACP!=1252. (GH-7278)

Miss Islington (bot) webhook-mailer at python.org
Thu Dec 6 02:22:21 EST 2018


https://github.com/python/cpython/commit/b1438c0d376e1d438a11927e2698e3317da0d854
commit: b1438c0d376e1d438a11927e2698e3317da0d854
branch: 3.7
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2018-12-05T23:22:17-08:00
summary:

bpo-33709: test_ntpath and test_posixpath fail in Windows with ACP!=1252. (GH-7278)

(cherry picked from commit 8752dfbd1f0c96ca09cdacabaf0d0f8c3895b6ce)

Co-authored-by: native-api <ivan_pozdeev at mail.ru>

files:
M Lib/test/support/__init__.py

diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
index 2768e1147946..512e354fabc8 100644
--- a/Lib/test/support/__init__.py
+++ b/Lib/test/support/__init__.py
@@ -852,7 +852,11 @@ def dec(*args, **kwargs):
     '\u20AC',
 ):
     try:
-        os.fsdecode(os.fsencode(character))
+        # If Python is set up to use the legacy 'mbcs' in Windows,
+        # 'replace' error mode is used, and encode() returns b'?'
+        # for characters missing in the ANSI codepage
+        if os.fsdecode(os.fsencode(character)) != character:
+            raise UnicodeError
     except UnicodeError:
         pass
     else:



More information about the Python-checkins mailing list