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]"
}
}
}