comparison mercurial/revlog.py @ 4222:90bb1ab53a85

revlog: attempt to gracefully handle some interleaved damage
author Matt Mackall <mpm@selenic.com>
date Thu, 15 Mar 2007 18:38:46 -0500
parents 27230c29bfec
children 2a8b6d78d7ee 43dedce9667e
comparison
equal deleted inserted replaced
4217:3be4785f8994 4222:90bb1ab53a85
423 e = struct.unpack(self.indexformat, cur) 423 e = struct.unpack(self.indexformat, cur)
424 self.index.append(e) 424 self.index.append(e)
425 self.nodemap[e[-1]] = n 425 self.nodemap[e[-1]] = n
426 n += 1 426 n += 1
427 if inline: 427 if inline:
428 if e[1] < 0:
429 break
428 off += e[1] 430 off += e[1]
429 if off > l: 431 if off > l:
430 # some things don't seek well, just read it 432 # some things don't seek well, just read it
431 fp.read(off - l) 433 fp.read(off - l)
434 break
432 if not st: 435 if not st:
433 break 436 break
434 437
435 438
436 def ngoffset(self, q): 439 def ngoffset(self, q):