--- a/mercurial/revlog.py
+++ b/mercurial/revlog.py
@@ -428,10 +428,13 @@ class revlog(object):
self.nodemap[e[-1]] = n
n += 1
if inline:
+ if e[1] < 0:
+ break
off += e[1]
if off > l:
# some things don't seek well, just read it
fp.read(off - l)
+ break
if not st:
break