Mercurial > public > mercurial-scm > hg-stable
diff mercurial/revlog.py @ 16375:d7d64b89a65c
revlog: allow retrieving contents by revision number
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 08 Apr 2012 12:38:02 -0500 |
parents | 29c2ff719715 |
children | e8d37b78acfb |
line wrap: on
line diff
--- 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: