Diff
Not logged in

Differences From:

File tools/cvs2fossil/lib/c2f_cyclebreaker.tcl part of check-in [04d76a9e79] - Renamed changeset method to describe modified results, and updated the one invoker. Modified the sorting of time ranges. Now by max, min as tiebreaker, and object name as last tiebreaker. by aku on 2007-11-29 07:55:01. [view]

To:

File tools/cvs2fossil/lib/c2f_cyclebreaker.tcl part of check-in [960645443b] - Extended checks for looped changesets. by aku on 2007-11-29 09:13:07. [view]

@@ -209,17 +209,17 @@
 		# one indicates big trouble in pass 5. We report them
 		# and dump internal structures to make it easier to
 		# trace the links causing the problem.
 		if {$succ eq $cset} {
-		    trouble fatal "Self-referencing changeset [$cset str]"
 		    log write 2 cyclebreaker "LOOP changeset [$cset str] __________________"
 		    array set nmap [$cset nextmap]
 		    foreach r [lsort -dict [array names nmap]] {
 			foreach succrev $nmap($r) {
 			    log write 2 cyclebreaker \
-				"LOOP * rev <$r> --> rev <$succrev> --> cs [project::rev str [project::rev ofitem $succrev]]"
+				"LOOP * <$r> --> <$succrev> --> cs [[project::rev ofitem $succrev] str]"
 			}
 		    }
+		    trouble fatal "Self-referencing changeset [$cset str]"
 		}
 	    }
 	}
 
@@ -442,8 +442,16 @@
 		# the chosen set. These are ignored
 		if {![$dg node exists $succ]} continue
 		$dg arc insert $cset $succ
 		if {$succ eq $cset} {
+		    log write 2 cyclebreaker "LOOP changeset [$cset str] __________________"
+		    array set nmap [$cset nextmap]
+		    foreach r [lsort -dict [array names nmap]] {
+			foreach succrev $nmap($r) {
+			    log write 2 cyclebreaker \
+				"LOOP * <$r> --> <$succrev> --> cs [[project::rev ofitem $succrev] str]"
+			}
+		    }
 		    trouble internal "Self-referencing changeset [$cset str]"
 		}
 	    }
 	}