mercurial/localrepo.py
changeset 18305 2502a15e033d
parent 18279 679767c38cb5
child 18309 cfeab932cff7
--- a/mercurial/localrepo.py	Fri Jan 11 18:39:43 2013 +0100
+++ b/mercurial/localrepo.py	Tue Jan 08 01:28:39 2013 +0100
@@ -1406,10 +1406,11 @@
         # it, Otherwise, since nodes were destroyed, the cache is stale and this
         # will be caught the next time it is read.
         if newheadnodes:
-            ctxgen = (self[node] for node in newheadnodes
-                      if self.changelog.hasnode(node))
+            cl = self.changelog
+            revgen = (cl.rev(node) for node in newheadnodes
+                      if cl.hasnode(node))
             cache = self._branchcaches[None]
-            cache.update(self, ctxgen)
+            cache.update(self, revgen)
             cache.write(self)
 
         # Ensure the persistent tag cache is updated.  Doing it now