diff -r 0903d6b9b1df -r 3e91d9978bec mercurial/branchmap.py --- a/mercurial/branchmap.py Tue Jan 19 00:20:53 2021 +0100 +++ b/mercurial/branchmap.py Fri Jan 15 01:58:59 2021 +0100 @@ -706,8 +706,10 @@ self._setcachedata(rev, reponode, branchidx) return b, close - def setdata(self, branch, rev, node, close): + def setdata(self, rev, changelogrevision): """add new data information to the cache""" + branch, close = changelogrevision.branchinfo + if branch in self._namesreverse: branchidx = self._namesreverse[branch] else: @@ -716,7 +718,7 @@ self._namesreverse[branch] = branchidx if close: branchidx |= _rbccloseflag - self._setcachedata(rev, node, branchidx) + self._setcachedata(rev, self._repo.changelog.node(rev), branchidx) # If no cache data were readable (non exists, bad permission, etc) # the cache was bypassing itself by setting: #