summaryrefslogtreecommitdiff
path: root/gitk
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2013-01-01 05:51:03 (GMT)
committerPaul Mackerras <paulus@samba.org>2013-01-01 05:51:03 (GMT)
commitd809fb17b00f912112090294ff0257c8a87af56e (patch)
tree64f454e1131c223818fef5a734605ff0318309ff /gitk
parentc0d92c222149c259ee4844bbad99a6bc167e757b (diff)
downloadgit-d809fb17b00f912112090294ff0257c8a87af56e.zip
git-d809fb17b00f912112090294ff0257c8a87af56e.tar.gz
git-d809fb17b00f912112090294ff0257c8a87af56e.tar.bz2
gitk: Fix display of branch names on some commits
Sometimes the code that divides commits up into arcs creates two successive arcs, but the commit between them (the commit at the end of the first arc and the beginning of the second arc) has only one parent and one child. If that commit is also the head of one or more branches, those branches get omitted from the "Branches" field in the commit display. The omission occurs because the commit gets erroneously identified as a commit which is part-way along an arc in [descheads]. This fixes it by changing the test to look at the arcouts array, which only contains elements for the commits at the start or end of an arc. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'gitk')
-rwxr-xr-xgitk4
1 files changed, 2 insertions, 2 deletions
diff --git a/gitk b/gitk
index bc73eea..eead5a4 100755
--- a/gitk
+++ b/gitk
@@ -10582,13 +10582,13 @@ proc anctags {id} {
# 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 {}} {