subrepo: use code from 71ea5b2b9517 only if Python needs it (issue2795) stable
authorThomas Arendsen Hein <thomas@intevation.de>
Thu, 05 May 2011 16:01:09 +0200
branchstable
changeset 14205 7b627923739f
parent 14170 31ec4d7eb63f
child 14211 b00ab6890fe9
child 14221 680c3c6fcb48
subrepo: use code from 71ea5b2b9517 only if Python needs it (issue2795) With Python >= 2.6 the original code already works correct, therefore the fix for issue2556 on Python <= 2.5 broke relative subrepositories with newer versions of Python.
mercurial/subrepo.py
--- a/mercurial/subrepo.py	Tue May 03 11:46:02 2011 -0500
+++ b/mercurial/subrepo.py	Thu May 05 16:01:09 2011 +0200
@@ -203,7 +203,8 @@
                 if parent[-1] == '/':
                     parent = parent[:-1]
                 r = urlparse.urlparse(parent + '/' + source)
-                if parent.startswith('ssh://'):
+                if parent.startswith('ssh://') and not r[1]:
+                    # Python before 2.6 parses ssh:// URLs wrong
                     host, path = r[2][2:].split('/', 1)
                     r2 = '//%s/%s' % (host, posixpath.normpath(path))
                 else: