# HG changeset patch # User Alexis S. L. Carvalho # Date 1157926508 10800 # Node ID baa3873eb38725ab76f8bd2afa3f8486dbdda2ce # Parent ad6aecaf4eed0d0a0459f5d8218766ec6e404083 don't let lazyparser read more data than it can handle This should fix issue368. diff -r ad6aecaf4eed -r baa3873eb387 mercurial/revlog.py --- a/mercurial/revlog.py Sat Sep 09 12:56:08 2006 +0200 +++ b/mercurial/revlog.py Sun Sep 10 19:15:08 2006 -0300 @@ -139,6 +139,11 @@ if self.all: return if data is None: self.dataf.seek(blockstart) + if blockstart + blocksize > self.datasize: + # the revlog may have grown since we've started running, + # but we don't have space in self.index for more entries. + # limit blocksize so that we don't get too much data. + blocksize = self.datasize - blockstart data = self.dataf.read(blocksize) lend = len(data) / self.s i = blockstart / self.s