mercurial/manifest.py
changeset 29908 bb3281b3fcaa
parent 29907 4fb4fc331699
child 29909 b60a5fe98b73
--- a/mercurial/manifest.py	Wed Aug 31 13:29:49 2016 -0700
+++ b/mercurial/manifest.py	Mon Aug 29 18:02:09 2016 -0700
@@ -1130,7 +1130,11 @@
         if node == revlog.nullid:
             return self._newmanifest() # don't upset local cache
         if node in self._mancache:
-            return self._mancache[node]
+            cached = self._mancache[node]
+            if (isinstance(cached, manifestctx) or
+                isinstance(cached, treemanifestctx)):
+                cached = cached.read()
+            return cached
         if self._treeondisk:
             def gettext():
                 return self.revision(node)