context: add manifestctx property on changectx
authorDurham Goode <durham@fb.com>
Tue, 08 Nov 2016 08:03:43 -0800
changeset 30344 362f6f651b2e
parent 30343 952e1916ae56
child 30345 fa54f7ade491
context: add manifestctx property on changectx This allows us to access the manifestctx for a given commit. This will be used in a later patch to be able to copy the manifestctx when we want to make a new commit.
mercurial/context.py
--- a/mercurial/context.py	Tue Nov 08 08:03:43 2016 -0800
+++ b/mercurial/context.py	Tue Nov 08 08:03:43 2016 -0800
@@ -178,6 +178,8 @@
         return hex(self.node())
     def manifest(self):
         return self._manifest
+    def manifestctx(self):
+        return self._manifestctx
     def repo(self):
         return self._repo
     def phasestr(self):
@@ -530,12 +532,15 @@
 
     @propertycache
     def _manifest(self):
-        return self._repo.manifestlog[self._changeset.manifest].read()
+        return self._manifestctx.read()
+
+    @propertycache
+    def _manifestctx(self):
+        return self._repo.manifestlog[self._changeset.manifest]
 
     @propertycache
     def _manifestdelta(self):
-        mfnode = self._changeset.manifest
-        return self._repo.manifestlog[mfnode].readdelta()
+        return self._manifestctx.readdelta()
 
     @propertycache
     def _parents(self):