From: Serhiy Storchaka Date: Mon, 16 Dec 2013 12:34:55 +0000 (+0200) Subject: Issue #19911: ntpath.splitdrive() now correctly processes the 'İ' character X-Git-Tag: v3.4.0b2~203^2~3 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3d7e11520e5993b2adf9b809a8342084053988ae;p=thirdparty%2FPython%2Fcpython.git Issue #19911: ntpath.splitdrive() now correctly processes the 'İ' character (U+0130, LATIN CAPITAL LETTER I WITH DOT ABOVE). --- diff --git a/Lib/ntpath.py b/Lib/ntpath.py index 826be87d3c7c..598c64f641ae 100644 --- a/Lib/ntpath.py +++ b/Lib/ntpath.py @@ -207,7 +207,7 @@ def splitdrive(p): empty = _get_empty(p) if len(p) > 1: sep = _get_sep(p) - normp = normcase(p) + normp = p.replace(_get_altsep(p), sep) if (normp[0:2] == sep*2) and (normp[2:3] != sep): # is a UNC path: # vvvvvvvvvvvvvvvvvvvv drive letter or UNC path diff --git a/Lib/test/test_ntpath.py b/Lib/test/test_ntpath.py index 309d59aba399..94c57b2188a3 100644 --- a/Lib/test/test_ntpath.py +++ b/Lib/test/test_ntpath.py @@ -66,6 +66,9 @@ class TestNtpath(unittest.TestCase): ('', '\\\\conky\\\\mountpoint\\foo\\bar')) tester('ntpath.splitdrive("//conky//mountpoint/foo/bar")', ('', '//conky//mountpoint/foo/bar')) + # Issue #19911: UNC part containing U+0130 + self.assertEqual(ntpath.splitdrive('//conky/MOUNTPOİNT/foo/bar'), + ('//conky/MOUNTPOİNT', '/foo/bar')) def test_split(self): tester('ntpath.split("c:\\foo\\bar")', ('c:\\foo', 'bar')) diff --git a/Misc/NEWS b/Misc/NEWS index 73625f3a5a74..c5244d301d13 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -29,6 +29,9 @@ Core and Builtins Library ------- +- Issue #19911: ntpath.splitdrive() now correctly processes the 'İ' character + (U+0130, LATIN CAPITAL LETTER I WITH DOT ABOVE). + - Issue #19532: python -m compileall with no filename/directory arguments now respects the -f and -q flags instead of ignoring them.