diff --git a/mercurial/dagutil.py b/mercurial/dagutil.py --- a/mercurial/dagutil.py +++ b/mercurial/dagutil.py @@ -131,10 +131,10 @@ return self._heads def _externalize(self, ix): - return self._revlog.index[ix][7] + return self._revlog.index[ix].node def _externalizeall(self, ixs): idx = self._revlog.index - return [idx[i][7] for i in ixs] + return [idx[i].node for i in ixs] def _internalize(self, id): ix = self._revlog.rev(id) @@ -165,13 +165,13 @@ rlog = self._revlog idx = rlog.index revdata = idx[ix] - prev = revdata[5] + prev = revdata.p1rev if prev != nullrev: - prev2 = revdata[6] + prev2 = revdata.p2rev if prev2 == nullrev: return [prev] return [prev, prev2] - prev2 = revdata[6] + prev2 = revdata.p2rev if prev2 != nullrev: return [prev2] return [] @@ -195,10 +195,11 @@ if rev not in seen and rev not in stops: seen.add(rev) revdata = idx[rev] - for i in [5, 6]: - prev = revdata[i] + + for prev in (revdata.p1rev, revdata.p2rev): if prev != nullrev: pending.append(prev) + return seen def headsetofconnecteds(self, ixs): @@ -209,8 +210,7 @@ headrevs = set(ixs) for rev in ixs: revdata = idx[rev] - for i in [5, 6]: - prev = revdata[i] + for prev in (revdata.p1rev, revdata.p2rev): if prev != nullrev: headrevs.discard(prev) assert headrevs @@ -263,7 +263,7 @@ while rev >= walkto: data = idx[rev] isroot = True - for prev in [data[5], data[6]]: # parent revs + for prev in [data.p1rev, data.p2rev]: # parent revs if prev != nullrev: cs.setdefault(prev, []).append(rev) isroot = False