# HG changeset patch # User Matt Mackall # Date 1294355081 21600 # Node ID 12ed25f39d0b6e788e0d7dd72bf1f1b6e22f8bdc # Parent 1b591f9b7fd2c834079c98aa5788f5073fdf150b revlog: break hash checking into subfunction diff -r 1b591f9b7fd2 -r 12ed25f39d0b mercurial/revlog.py --- a/mercurial/revlog.py Thu Jan 06 17:04:33 2011 -0600 +++ b/mercurial/revlog.py Thu Jan 06 17:04:41 2011 -0600 @@ -1088,13 +1088,18 @@ bins = [self._chunk(r) for r in chain] text = mdiff.patches(text, bins) + + text = self._checkhash(text, node) + + self._cache = (node, rev, text) + return text + + def _checkhash(self, text, node): p1, p2 = self.parents(node) if (node != hash(text, p1, p2) and not (self.flags(rev) & REVIDX_PUNCHED_FLAG)): raise RevlogError(_("integrity check failed on %s:%d") % (self.indexfile, rev)) - - self._cache = (node, rev, text) return text def checkinlinesize(self, tr, fp=None):