windows: use upper() instead of lower() or os.path.normcase()
this patch uses upper() instead of lower() or os.path.normcase() for
case folding on Windows(NTFS), because lower-ing causes problems for
some languages on it.
see below for detail about problem of lower-ing:
https://blogs.msdn.com/b/michkap/archive/2005/01/16/353873.aspx
--- a/hgext/win32mbcs.py Fri Dec 16 21:09:40 2011 +0900
+++ b/hgext/win32mbcs.py Fri Dec 16 21:09:40 2011 +0900
@@ -127,7 +127,9 @@
# NOTE: os.path.dirname() and os.path.basename() are safe because
# they use result of os.path.split()
funcs = '''os.path.join os.path.split os.path.splitext
- os.path.splitunc os.path.normpath os.path.normcase os.makedirs
+ os.path.splitunc os.path.normpath os.makedirs
+ mercurial.windows.normcase
+ mercurial.util.normcase
mercurial.util.endswithsep mercurial.util.splitpath mercurial.util.checkcase
mercurial.util.fspath mercurial.util.pconvert mercurial.util.normpath
mercurial.util.checkwinfilename mercurial.util.checkosfilename'''
--- a/mercurial/windows.py Fri Dec 16 21:09:40 2011 +0900
+++ b/mercurial/windows.py Fri Dec 16 21:09:40 2011 +0900
@@ -131,7 +131,8 @@
def normpath(path):
return pconvert(os.path.normpath(path))
-normcase = os.path.normcase
+def normcase(path):
+ return path.upper()
def realpath(path):
'''