diff mercurial/util.py @ 15018:e89f62dcd723 stable

url: really handle urls of the form file:///c:/foo/bar/ correctly 28edd65000d9 made sure that paths that seemed to start with a windows drive letter would not get an extra leading slash. localpath should thus not try to handle this case by removing a leading slash, and this special handling is thus removed. (The localpath handling of this case was wrong anyway, because paths that look like they start with a windows drive letter can't have a leading slash.) A quick verification of this is to run 'hg id file:///c:/foo/bar/'.
author Mads Kiilerich <mads@kiilerich.com>
date Thu, 04 Aug 2011 02:51:29 +0200
parents e6730f9e13bc
children 0f1311e829c9
line wrap: on
line diff
--- a/mercurial/util.py	Mon Aug 01 18:09:20 2011 -0500
+++ b/mercurial/util.py	Thu Aug 04 02:51:29 2011 +0200
@@ -1444,6 +1444,8 @@
                     path = None
                 if not self.host:
                     self.host = None
+                    # path of file:///d is /d
+                    # path of file:///d:/ is d:/, not /d:/
                     if path and not hasdriveletter(path):
                         path = '/' + path
 
@@ -1586,11 +1588,6 @@
                 path = self._hostport + '/' + self.path
             elif self.host is not None and self.path:
                 path = '/' + path
-            # We also need to handle the case of file:///C:/, which
-            # should return C:/, not /C:/.
-            elif hasdriveletter(path):
-                # Strip leading slash from paths with drive names
-                return path[1:]
             return path
         return self._origpath