1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-10-28 04:49:43 +01:00

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>
This commit is contained in:
James Coglan 2019-10-15 23:47:52 +00:00 committed by Junio C Hamano
parent 46ba2abdfa
commit ee7abb5ffa

12
graph.c
View file

@ -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);