mercurial/revlog.py
branchstable
changeset 47504 411dc27fd9fd
parent 46974 3c9208702db3
child 47759 d7515d29761d
equal deleted inserted replaced
47503:bd0a2a919bf8 47504:411dc27fd9fd
   882             entry = self.index[rev]
   882             entry = self.index[rev]
   883         except IndexError:
   883         except IndexError:
   884             if rev == wdirrev:
   884             if rev == wdirrev:
   885                 raise error.WdirUnsupported
   885                 raise error.WdirUnsupported
   886             raise
   886             raise
   887         if entry[5] == nullrev:
   887 
   888             return entry[6], entry[5]
   888         return entry[5], entry[6]
   889         else:
       
   890             return entry[5], entry[6]
       
   891 
   889 
   892     # fast parentrevs(rev) where rev isn't filtered
   890     # fast parentrevs(rev) where rev isn't filtered
   893     _uncheckedparentrevs = parentrevs
   891     _uncheckedparentrevs = parentrevs
   894 
   892 
   895     def node(self, rev):
   893     def node(self, rev):
   906         return self.start(rev) + self.length(rev)
   904         return self.start(rev) + self.length(rev)
   907 
   905 
   908     def parents(self, node):
   906     def parents(self, node):
   909         i = self.index
   907         i = self.index
   910         d = i[self.rev(node)]
   908         d = i[self.rev(node)]
   911         # inline node() to avoid function call overhead
   909         return i[d[5]][7], i[d[6]][7]  # map revisions to nodes inline
   912         if d[5] == nullid:
       
   913             return i[d[6]][7], i[d[5]][7]
       
   914         else:
       
   915             return i[d[5]][7], i[d[6]][7]
       
   916 
   910 
   917     def chainlen(self, rev):
   911     def chainlen(self, rev):
   918         return self._chaininfo(rev)[0]
   912         return self._chaininfo(rev)[0]
   919 
   913 
   920     def _chaininfo(self, rev):
   914     def _chaininfo(self, rev):