[Python-checkins] r78722 - in python/trunk: Lib/lib-tk/FixTk.py Misc/NEWS

florent.xicluna python-checkins at python.org
Sat Mar 6 12:01:08 CET 2010


Author: florent.xicluna
Date: Sat Mar  6 12:01:08 2010
New Revision: 78722

Log:
#6906: TCL_LIBRARY and TK_LIBRARY environment variables should be encoded.


Modified:
   python/trunk/Lib/lib-tk/FixTk.py
   python/trunk/Misc/NEWS

Modified: python/trunk/Lib/lib-tk/FixTk.py
==============================================================================
--- python/trunk/Lib/lib-tk/FixTk.py	(original)
+++ python/trunk/Lib/lib-tk/FixTk.py	Sat Mar  6 12:01:08 2010
@@ -19,10 +19,10 @@
         return s
 else:
     def convert_path(s):
-        if isinstance(s, str):
-            s = s.decode("mbcs")
+        assert isinstance(s, str)   # sys.prefix contains only bytes
+        udir = s.decode("mbcs")
         hdir = ctypes.windll.kernel32.\
-            CreateFileW(s, 0x80,    # FILE_READ_ATTRIBUTES
+            CreateFileW(udir, 0x80, # FILE_READ_ATTRIBUTES
                         1,          # FILE_SHARE_READ
                         None, 3,    # OPEN_EXISTING
                         0x02000000, # FILE_FLAG_BACKUP_SEMANTICS
@@ -38,9 +38,9 @@
         if res == 0:
             # Conversion failed (e.g. network location)
             return s
-        s = buf[:res]
+        s = buf[:res].encode("mbcs")
         # Ignore leading \\?\
-        if s.startswith(u"\\\\?\\"):
+        if s.startswith("\\\\?\\"):
             s = s[4:]
         return s
 

Modified: python/trunk/Misc/NEWS
==============================================================================
--- python/trunk/Misc/NEWS	(original)
+++ python/trunk/Misc/NEWS	Sat Mar  6 12:01:08 2010
@@ -41,6 +41,8 @@
 Library
 -------
 
+- Issue #6906: Tk should not set Unicode environment variables on Windows.
+
 - Issue #1054943: Fix unicodedata.normalize('NFC', text) for the Public Review
   Issue #29
 


More information about the Python-checkins mailing list