diff -r 6fb3b8c61775 -r 79db6d40bced mercurial/localrepo.py --- a/mercurial/localrepo.py Sat Dec 22 01:34:23 2012 +0100 +++ b/mercurial/localrepo.py Sat Dec 22 01:44:42 2012 +0100 @@ -666,7 +666,7 @@ '''returns a dictionary {branch: [branchheads]}''' if self.changelog.filteredrevs: # some changeset are excluded we can't use the cache - bmap = {} + bmap = branchmap.branchcache() branchmap.update(self, bmap, (self[r] for r in self)) return bmap else: @@ -2495,7 +2495,7 @@ if rbheads: rtiprev = max((int(self.changelog.rev(node)) for node in rbheads)) - self._branchcache = rbranchmap + self._branchcache = branchmap.branchcache(rbranchmap) rtipnode = self._branchcachetip = self[rtiprev].node() branchmap.write(self, self._branchcache, rtipnode, rtiprev) self.invalidate()