##// END OF EJS Templates
revlog: change accesses to index entry elements to use positive offsets
Matt Mackall -
r4978:93d48a8f default
parent child Browse files
Show More
@@ -260,7 +260,7 b' class lazymap(object):'
260 260 ret = self.p.index[i]
261 261 if isinstance(ret, str):
262 262 ret = struct.unpack(indexformatng, ret)
263 yield ret[-1]
263 yield ret[7]
264 264 def __getitem__(self, key):
265 265 try:
266 266 return self.p.map[key]
@@ -344,7 +344,7 b' class revlogio(object):'
344 344 while off + s <= l:
345 345 e = struct.unpack(indexformatng, data[off:off + s])
346 346 index.append(e)
347 nodemap[e[-1]] = n
347 nodemap[e[7]] = n
348 348 n += 1
349 349 off += s
350 350 if inline:
@@ -475,23 +475,23 b' class revlog(object):'
475 475 def tip(self): return self.node(len(self.index) - 1)
476 476 def count(self): return len(self.index)
477 477 def node(self, rev):
478 return rev == nullrev and nullid or self.index[rev][-1]
478 return rev == nullrev and nullid or self.index[rev][7]
479 479 def rev(self, node):
480 480 try:
481 481 return self.nodemap[node]
482 482 except KeyError:
483 483 raise LookupError(_('%s: no node %s') % (self.indexfile, hex(node)))
484 484 def linkrev(self, node):
485 return (node == nullid) and nullrev or self.index[self.rev(node)][-4]
485 return (node == nullid) and nullrev or self.index[self.rev(node)][4]
486 486 def parents(self, node):
487 487 if node == nullid: return (nullid, nullid)
488 488 r = self.rev(node)
489 d = self.index[r][-3:-1]
489 d = self.index[r][5:7]
490 490 return (self.node(d[0]), self.node(d[1]))
491 491 def parentrevs(self, rev):
492 492 if rev == nullrev:
493 493 return (nullrev, nullrev)
494 d = self.index[rev][-3:-1]
494 d = self.index[rev][5:7]
495 495 return d
496 496 def start(self, rev):
497 497 if rev == nullrev:
@@ -540,7 +540,7 b' class revlog(object):'
540 540 if (rev == nullrev):
541 541 return nullrev
542 542 else:
543 return self.index[rev][-5]
543 return self.index[rev][3]
544 544
545 545 def reachable(self, node, stop=None):
546 546 """return a hash of all nodes ancestral to a given node, including
@@ -1229,7 +1229,7 b' class revlog(object):'
1229 1229 # does not actually belong to an older changeset.
1230 1230 # The minlink parameter defines the oldest revision
1231 1231 # we're allowed to strip away.
1232 while minlink > self.index[rev][-4]:
1232 while minlink > self.index[rev][4]:
1233 1233 rev += 1
1234 1234 if rev >= self.count():
1235 1235 return
General Comments 0
You need to be logged in to leave comments. Login now