diff --git a/mercurial/bundlerepo.py b/mercurial/bundlerepo.py --- a/mercurial/bundlerepo.py +++ b/mercurial/bundlerepo.py @@ -154,8 +154,10 @@ class bundlerepository(localrepo.localre def __init__(self, ui, path, bundlename): localrepo.localrepository.__init__(self, ui, path) - self._url = 'bundle:' + bundlename - if path: self._url += '+' + path + if path: + self._url = 'bundle:' + path + '+' + bundlename + else: + self._url = 'bundle:' + bundlename self.tempfile = None self.bundlefile = open(bundlename, "rb") diff --git a/tests/test-bundle.out b/tests/test-bundle.out --- a/tests/test-bundle.out +++ b/tests/test-bundle.out @@ -129,7 +129,7 @@ rolling back last transaction ====== Log -R bundle:empty+full.hg 8 7 6 5 4 3 2 1 0 ====== Pull full.hg into empty again (using -R; with hook) -changegroup hook: HG_NODE=5649c9d34dd87d0ecb5fd39672128376e83b22e1 HG_SOURCE=pull HG_URL=bundle:full.hg+empty +changegroup hook: HG_NODE=5649c9d34dd87d0ecb5fd39672128376e83b22e1 HG_SOURCE=pull HG_URL=bundle:empty+full.hg pulling from full.hg requesting all changes adding changesets