diff options
author | James Coglan <jcoglan@gmail.com> | 2019-10-15 23:47:52 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-10-16 11:11:24 +0900 |
commit | ee7abb5ffaaba8c3fc5f89765609f30d638f63f7 (patch) | |
tree | ef6e353ea23d219c11afa42c9bfe435e4b6a5638 | |
parent | graph: remove `mapping_idx` and `graph_update_width()` (diff) | |
download | tgif-ee7abb5ffaaba8c3fc5f89765609f30d638f63f7.tar.xz |
graph: extract logic for moving to GRAPH_PRE_COMMIT state
This computation is repeated in a couple of places and I need to add
another condition to it to implement a further improvement to the graph
rendering, so I'm extracting this into a function.
Signed-off-by: James Coglan <jcoglan@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | graph.c | 12 |
1 files changed, 8 insertions, 4 deletions
@@ -588,6 +588,12 @@ static void graph_update_columns(struct git_graph *graph) graph->mapping_size--; } +static int graph_needs_pre_commit_line(struct git_graph *graph) +{ + return graph->num_parents >= 3 && + graph->commit_index < (graph->num_columns - 1); +} + void graph_update(struct git_graph *graph, struct commit *commit) { struct commit_list *parent; @@ -643,8 +649,7 @@ void graph_update(struct git_graph *graph, struct commit *commit) */ if (graph->state != GRAPH_PADDING) graph->state = GRAPH_SKIP; - else if (graph->num_parents >= 3 && - graph->commit_index < (graph->num_columns - 1)) + else if (graph_needs_pre_commit_line(graph)) graph->state = GRAPH_PRE_COMMIT; else graph->state = GRAPH_COMMIT; @@ -714,8 +719,7 @@ static void graph_output_skip_line(struct git_graph *graph, struct graph_line *l */ graph_line_addstr(line, "..."); - if (graph->num_parents >= 3 && - graph->commit_index < (graph->num_columns - 1)) + if (graph_needs_pre_commit_line(graph)) graph_update_state(graph, GRAPH_PRE_COMMIT); else graph_update_state(graph, GRAPH_COMMIT); |