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

Serhiy Storchaka webhook-mailer at python.org
Thu Dec 6 02:04:39 EST 2018


https://github.com/python/cpython/commit/8752dfbd1f0c96ca09cdacabaf0d0f8c3895b6ce
commit: 8752dfbd1f0c96ca09cdacabaf0d0f8c3895b6ce
branch: master
author: native-api <ivan_pozdeev at mail.ru>
committer: Serhiy Storchaka <storchaka at gmail.com>
date: 2018-12-06T09:04:35+02:00
summary:

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

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

diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
index f90212cd7ecf..05e8593f9825 100644
--- a/Lib/test/support/__init__.py
+++ b/Lib/test/support/__init__.py
@@ -871,7 +871,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