summaryrefslogtreecommitdiff
path: root/commit-graph.c
diff options
context:
space:
mode:
authorSZEDER Gábor <szeder.dev@gmail.com>2020-07-09 16:54:32 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-07-09 17:27:23 (GMT)
commit6f9d5f2fda1f94cf1539d3e0529c2b2e7ee7eebb (patch)
treef0d910be0e83f669899b507afbe6dcf4ead8d537 /commit-graph.c
parent2f00c355cb79ee86bddc9f2fef91ac380a6023fc (diff)
downloadgit-6f9d5f2fda1f94cf1539d3e0529c2b2e7ee7eebb.zip
git-6f9d5f2fda1f94cf1539d3e0529c2b2e7ee7eebb.tar.gz
git-6f9d5f2fda1f94cf1539d3e0529c2b2e7ee7eebb.tar.bz2
commit-graph: fix progress of reachable commits
To display a progress line while iterating over all refs, d335ce8f24 (commit-graph.c: show progress of finding reachable commits, 2020-05-13) should have added a pair of start_delayed_progress() and stop_progress() calls around a for_each_ref() invocation. Alas, the stop_progress() call ended up at the wrong place, after write_commit_graph(), which does all the commit-graph computation and writing, and has several progress lines of its own. Consequently, that new Collecting referenced commits: 123 progress line is overwritten by the first progress line shown by write_commit_graph(), and its final "done" line is shown last, after everything is finished: Expanding reachable commits in commit graph: 344786, done. Computing commit changed paths Bloom filters: 100% (344786/344786), done. Collecting referenced commits: 154, done. Move that stop_progress() call to the right place. While at it, drop the unnecessary 'if (data.progress)' condition protecting the stop_progress() call, because that function is prepared to handle a NULL progress struct. Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit-graph.c')
-rw-r--r--commit-graph.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/commit-graph.c b/commit-graph.c
index 5df3e08..aaf3327 100644
--- a/commit-graph.c
+++ b/commit-graph.c
@@ -1354,12 +1354,13 @@ int write_commit_graph_reachable(struct object_directory *odb,
_("Collecting referenced commits"), 0);
for_each_ref(add_ref_to_set, &data);
+
+ stop_progress(&data.progress);
+
result = write_commit_graph(odb, NULL, &commits,
flags, split_opts);
oidset_clear(&commits);
- if (data.progress)
- stop_progress(&data.progress);
return result;
}