mercurial/revlog.py
changeset 16375 d7d64b89a65c
parent 16374 29c2ff719715
child 16414 e8d37b78acfb
--- a/mercurial/revlog.py	Sat Apr 07 15:43:18 2012 -0500
+++ b/mercurial/revlog.py	Sun Apr 08 12:38:02 2012 -0500
@@ -858,8 +858,15 @@
         return mdiff.textdiff(self.revision(self.node(rev1)),
                               self.revision(self.node(rev2)))
 
-    def revision(self, node):
-        """return an uncompressed revision of a given node"""
+    def revision(self, nodeorrev):
+        """return an uncompressed revision of a given node or"""
+        if isinstance(nodeorrev, int):
+            rev = nodeorrev
+            node = self.node(rev)
+        else:
+            node = nodeorrev
+            rev = None
+
         cachedrev = None
         if node == nullid:
             return ""
@@ -870,7 +877,8 @@
 
         # look up what we need to read
         text = None
-        rev = self.rev(node)
+        if rev is None:
+            rev = self.rev(node)
 
         # check rev flags
         if self.flags(rev) & ~REVIDX_KNOWN_FLAGS: