From: Taylor Blau Date: Sat, 8 Jul 2023 00:31:39 +0000 (-0400) Subject: commit-graph.c: iteratively verify commit-graph chains X-Git-Tag: v2.42.0-rc0~45^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f5facaa4653d3bcdb5ad5508e47d0e9a03c2aaa5;p=thirdparty%2Fgit.git commit-graph.c: iteratively verify commit-graph chains Now that we have a function which can verify a single layer of a commit-graph chain, implement `verify_commit_graph()` in terms of iterating over commit-graphs along their `->base_graph` pointers. This further prepares us to consolidate the progress output of `git commit-graph verify`. Signed-off-by: Taylor Blau Acked-by: Derrick Stolee Signed-off-by: Junio C Hamano --- diff --git a/commit-graph.c b/commit-graph.c index e846920935..bb56733d8c 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -2708,10 +2708,11 @@ int verify_commit_graph(struct repository *r, struct commit_graph *g, int flags) return 1; } - local_error = verify_one_commit_graph(r, g, flags); - - if (!(flags & COMMIT_GRAPH_VERIFY_SHALLOW) && g->base_graph) - local_error |= verify_commit_graph(r, g->base_graph, flags); + for (; g; g = g->base_graph) { + local_error |= verify_one_commit_graph(r, g, flags); + if (flags & COMMIT_GRAPH_VERIFY_SHALLOW) + break; + } return local_error; }