}
proc highlightfile_for_scrollpos {topidx} {
- global difffilestart
+ global cmitmode difffilestart
+ if {$cmitmode eq "tree"} return
if {![info exists difffilestart]} return
set top [lindex [split $topidx .] 0]
global searchstring cmitmode ctext
global suppress_highlighting_file_for_this_scrollpos
- if {$cmitmode ne "tree"} {
- set topidx [$ctext index @0,0]
- if {![info exists suppress_highlighting_file_for_this_scrollpos]
- || $topidx ne $suppress_highlighting_file_for_this_scrollpos} {
- highlightfile_for_scrollpos $topidx
- }
+ set topidx [$ctext index @0,0]
+ if {![info exists suppress_highlighting_file_for_this_scrollpos]
+ || $topidx ne $suppress_highlighting_file_for_this_scrollpos} {
+ highlightfile_for_scrollpos $topidx
}
catch {unset suppress_highlighting_file_for_this_scrollpos}
# including id itself if it has a head.
proc descheads {id} {
global arcnos arcstart arcids archeads idheads cached_dheads
- global allparents
+ global allparents arcout
if {![info exists allparents($id)]} {
return {}
}
set aret {}
- if {[llength $arcnos($id)] == 1 && [llength $allparents($id)] == 1} {
+ if {![info exists arcout($id)]} {
# part-way along an arc; check it first
set a [lindex $arcnos($id) 0]
if {$archeads($a) ne {}} {