summaryrefslogtreecommitdiff
path: root/graph.c
diff options
context:
space:
mode:
authorAdam Simpkins <simpkins@facebook.com>2009-08-18 19:34:33 -0700
committerJunio C Hamano <gitster@pobox.com>2009-08-21 12:41:25 -0700
commitbeb5af43a6114b551f14bc13f1beecfe8de930d9 (patch)
tree4b86d035b89aec399e129669a5e162b478adf322 /graph.c
parent83e355a62cd05fba4533d59f9ab4e104c0596279 (diff)
downloadgit-beb5af43a6114b551f14bc13f1beecfe8de930d9.tar.gz
graph API: fix bug in graph_is_interesting()
Previously, graph_is_interesting() did not behave quite the same way as the code in get_revision(). As a result, it would sometimes think commits were uninteresting, even though get_revision() would return them. This resulted in incorrect lines in the graph output. This change creates a get_commit_action() function, which graph_is_interesting() and simplify_commit() both now use to determine if a commit will be shown. It is identical to the old simplify_commit() behavior, except that it never calls rewrite_parents(). This problem was reported by Santi BĂ©jar. The following command would exhibit the problem before, but now works correctly: git log --graph --simplify-by-decoration --oneline v1.6.3.3 Previously git graph did not display the output for this command correctly between f29ac4f and 66996ec, among other places. Signed-off-by: Adam Simpkins <simpkins@facebook.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'graph.c')
-rw-r--r--graph.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/graph.c b/graph.c
index e466770208..9087f65849 100644
--- a/graph.c
+++ b/graph.c
@@ -286,9 +286,10 @@ static int graph_is_interesting(struct git_graph *graph, struct commit *commit)
}
/*
- * Uninteresting and pruned commits won't be printed
+ * Otherwise, use get_commit_action() to see if this commit is
+ * interesting
*/
- return (commit->object.flags & (UNINTERESTING | TREESAME)) ? 0 : 1;
+ return get_commit_action(graph->revs, commit) == commit_show;
}
static struct commit_list *next_interesting_parent(struct git_graph *graph,