Mercurial > hg-stable
changeset 13912:71ea5b2b9517 stable
subrepo: prevent url normalization from removing // in ssh paths (issue2556)
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Thu, 07 Apr 2011 12:33:47 +0200 |
parents | 08d49b6b8d32 |
children | d3f90ff904b8 5f126c01ebfa |
files | mercurial/subrepo.py |
diffstat | 1 files changed, 6 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/subrepo.py Thu Apr 07 13:23:07 2011 +0530 +++ b/mercurial/subrepo.py Thu Apr 07 12:33:47 2011 +0200 @@ -202,8 +202,12 @@ if parent[-1] == '/': parent = parent[:-1] r = urlparse.urlparse(parent + '/' + source) - r = urlparse.urlunparse((r[0], r[1], - posixpath.normpath(r[2]), + if parent.startswith('ssh://'): + host, path = r[2][2:].split('/', 1) + r2 = '//%s/%s' % (host, posixpath.normpath(path)) + else: + r2 = posixpath.normpath(r[2]) + r = urlparse.urlunparse((r[0], r[1], r2, r[3], r[4], r[5])) return r else: # plain file system path