diff src/org/tmatesoft/hg/internal/PhasesHelper.java @ 446:9f0e6dfd417e smartgit3

Workaround for a Revlog#walk defect for the price of (almost) complete repo walk
author Artem Tikhomirov <tikhomirov.artem@gmail.com>
date Tue, 05 Jun 2012 21:18:20 +0200
parents d0e5dc3cae6e
children 056f724bdc21
line wrap: on
line diff
--- 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<Nodeid> parents2consider = new HashSet<Nodeid>(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) {