##// END OF EJS Templates
imported patch folding
Matt Mackall -
r3784:1427949b default
parent child Browse files
Show More
@@ -633,6 +633,28 b' def groupname(gid=None):'
633 633 except ImportError:
634 634 return None
635 635
636 # File system features
637
638 def checkfolding(path):
639 """
640 Check whether the given path is on a case-sensitive filesystem
641
642 Requires a path (like /foo/.hg) ending with a foldable final
643 directory component.
644 """
645 s1 = os.stat(path)
646 d, b = os.path.split(path)
647 p2 = os.path.join(d, b.upper())
648 if path == p2:
649 p2 = os.path.join(d, b.lower())
650 try:
651 s2 = os.stat(p2)
652 if s2 == s1:
653 return False
654 return True
655 except:
656 return True
657
636 658 # Platform specific variants
637 659 if os.name == 'nt':
638 660 demandload(globals(), "msvcrt")
General Comments 0
You need to be logged in to leave comments. Login now