# HG changeset patch # User Artem Tikhomirov # Date 1338923900 -7200 # Node ID 9f0e6dfd417eb5939689345411d1770ed7a8401b # Parent d0e5dc3cae6e3cf51e8149a373d5dde123fe1090 Workaround for a Revlog#walk defect for the price of (almost) complete repo walk diff -r d0e5dc3cae6e -r 9f0e6dfd417e src/org/tmatesoft/hg/internal/PhasesHelper.java --- a/src/org/tmatesoft/hg/internal/PhasesHelper.java Tue Jun 05 20:50:06 2012 +0200 +++ b/src/org/tmatesoft/hg/internal/PhasesHelper.java Tue Jun 05 21:18:20 2012 +0200 @@ -112,16 +112,16 @@ */ final HashSet parents2consider = new HashSet(roots); final boolean[] result = new boolean[] { false }; - hgRepo.getChangelog().walk(rootIndexes[0], csetRevIndex, new HgChangelog.ParentInspector() { + hgRepo.getChangelog().walk(0/*rootIndexes[0]*/, csetRevIndex, new HgChangelog.ParentInspector() { public void next(int revisionIndex, Nodeid revision, int parent1, int parent2, Nodeid nidParent1, Nodeid nidParent2) { boolean descendant = false; if (!nidParent1.isNull() && parents2consider.contains(nidParent1)) { - parents2consider.add(nidParent1); + parents2consider.add(revision); descendant = true; } if (!nidParent2.isNull() && parents2consider.contains(nidParent2)) { - parents2consider.add(nidParent2); + parents2consider.add(revision); descendant = true; } if (descendant && revisionIndex == csetRevIndex) {