]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
revert semantics of commonprefix to work character-by-character
authorSkip Montanaro <skip@pobox.com>
Tue, 22 Aug 2000 13:01:53 +0000 (13:01 +0000)
committerSkip Montanaro <skip@pobox.com>
Tue, 22 Aug 2000 13:01:53 +0000 (13:01 +0000)
Lib/dospath.py
Lib/ntpath.py
Lib/posixpath.py

index 55123a1bf3a5f334a116f39848c0f588cbdaa362..98efe6751f5c26eaf90267779f4ed7d34c0267da 100644 (file)
@@ -3,7 +3,6 @@
 import os
 import stat
 import string
-import re
 
 
 def normcase(s):
@@ -103,23 +102,18 @@ def dirname(p):
     return split(p)[0]
 
 
-# Return the longest prefix of all list elements.
-
 def commonprefix(m):
-    "Given a list of pathnames, returns the longest common leading component"
+    """Return the longest prefix of all list elements."""
+
     if not m: return ''
-    n = map(string.lower, m)
-    for i in range(len(n)):
-        n[i] = re.split(r"[/\\]", n[i])
-            
-    prefix = n[0]
-    for item in n:
+    prefix = m[0]
+    for item in m:
         for i in range(len(prefix)):
             if prefix[:i+1] <> item[:i+1]:
                 prefix = prefix[:i]
                 if i == 0: return ''
                 break
-    return "\\".join(prefix)
+    return prefix
 
 
 # Get size, mtime, atime of files.
index f8334e55183ca1ab7ad74e27a2ce183bb77812f3..aa441bd69a3933d21e321c4d855ac02e5f95f56d 100644 (file)
@@ -8,7 +8,6 @@ module as os.path.
 import os
 import stat
 import string
-import re
 
 
 # Normalize the case of a pathname and map slashes to backslashes.
@@ -159,18 +158,14 @@ def dirname(p):
 def commonprefix(m):
     "Given a list of pathnames, returns the longest common leading component"
     if not m: return ''
-    n = map(string.lower, m)
-    for i in range(len(n)):
-        n[i] = re.split(r"[/\\]", n[i])
-            
-    prefix = n[0]
-    for item in n:
+    prefix = m[0]
+    for item in m:
         for i in range(len(prefix)):
             if prefix[:i+1] <> item[:i+1]:
                 prefix = prefix[:i]
                 if i == 0: return ''
                 break
-    return "\\".join(prefix)
+    return prefix
 
 
 # Get size, mtime, atime of files.
index d8da4efa4731f5350e928cea118de76599facfab..f7e01613cd71da022cca7b7cfedc3a858e91050f 100644 (file)
@@ -118,18 +118,14 @@ def dirname(p):
 def commonprefix(m):
     "Given a list of pathnames, returns the longest common leading component"
     if not m: return ''
-    n = m[:]
-    for i in range(len(n)):
-        n[i] = n[i].split("/")
-
-    prefix = n[0]
-    for item in n:
+    prefix = m[0]
+    for item in m:
         for i in range(len(prefix)):
             if prefix[:i+1] <> item[:i+1]:
                 prefix = prefix[:i]
                 if i == 0: return ''
                 break
-    return "/".join(prefix)
+    return prefix
 
 
 # Get size, mtime, atime of files.