提交 eb5f8c9c 编写于 作者: P Paul Mackerras

gitk: Don't try to show local changes from a head that isn't shown

When updating the display, if the checked-out head has moved on and
isn't currently shown, and there are local changes, we could try to
insert a fake row with a parent that isn't displayed, leading to a
Tcl error.  This is because we check whether the checked-out head
is displayed before rereading the references (which is when we discover
that the head has moved).  This fixes it.
Signed-off-by: NPaul Mackerras <paulus@samba.org>
上级 fc2a256f
......@@ -170,11 +170,18 @@ proc updatecommits {} {
global curview viewargs viewfiles viewincl viewinstances
global viewactive viewcomplete loginstance tclencoding mainheadid
global varcid startmsecs commfd showneartags showlocalchanges leftover
global mainheadid
if {$showlocalchanges && [commitinview $mainheadid $curview]} {
dodiffindex
}
set oldmainid $mainheadid
rereadrefs
if {$showlocalchanges} {
if {$mainheadid ne $oldmainid} {
dohidelocalchanges
}
if {[commitinview $mainheadid $curview]} {
dodiffindex
}
}
set view $curview
set commits [exec git rev-parse --default HEAD --revs-only \
$viewargs($view)]
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册