Mercurial > hg-stable
changeset 28221:7a8c44844f57 stable
bundlerepo: properly handle hidden linkrev in manifestlog (issue4945)
The bundlerepository have to do some special magic to handle linkrev of the
bundled manifest. That logic was done from a repoview and obsolescence marker
affecting bundled changeset could lead to a crash. We now ensure we operate on
unfiltered repository.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Mon, 22 Feb 2016 23:34:54 +0100 |
parents | 0209bdd553b9 |
children | b966e35aad78 |
files | mercurial/bundlerepo.py |
diffstat | 1 files changed, 2 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/bundlerepo.py Mon Feb 22 18:35:40 2016 +0100 +++ b/mercurial/bundlerepo.py Mon Feb 22 23:34:54 2016 +0100 @@ -325,7 +325,8 @@ self.bundle.seek(self.manstart) # consume the header if it exists self.bundle.manifestheader() - m = bundlemanifest(self.svfs, self.bundle, self.changelog.rev) + linkmapper = self.unfiltered().changelog.rev + m = bundlemanifest(self.svfs, self.bundle, linkmapper) # XXX: hack to work with changegroup3, but we still don't handle # tree manifests correctly if self.bundle.version == "03":