On Wed, Jun 23, 2021 at 07:48:11PM +0200, Ævar Arnfjörð Bjarmason wrote: > Fix a bug that's been here since 7cc8f971085 (pack-objects: implement > bitmap writing, 2013-12-21), we did not call stop_progress() if we > reached the early exit in this function. This will matter in a > subsequent commit where we BUG(...) out if this happens, and matters > now e.g. because we don't have a corresponding "region_end" for the > progress trace2 event. > > Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> > --- > pack-bitmap-write.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/pack-bitmap-write.c b/pack-bitmap-write.c > index 88d9e696a54..6e110e41ea4 100644 > --- a/pack-bitmap-write.c > +++ b/pack-bitmap-write.c > @@ -550,6 +550,7 @@ void bitmap_writer_select_commits(struct commit **indexed_commits, > if (indexed_commits_nr < 100) { > for (i = 0; i < indexed_commits_nr; ++i) > push_bitmapped_commit(indexed_commits[i]); > + stop_progress(&writer.progress); > return; > } When I found this bug I fixed it differently: with your patch there are no display() calls at all between start_progress() and this new stop_progress(), indicating that a stop_progress() is not missing but rather the start_progress is in the wrong place: --- >8 --- diff --git a/pack-bitmap-write.c b/pack-bitmap-write.c index 88d9e696a5..f0b4044e2b 100644 --- a/pack-bitmap-write.c +++ b/pack-bitmap-write.c @@ -544,15 +544,15 @@ void bitmap_writer_select_commits(struct commit **indexed_commits, QSORT(indexed_commits, indexed_commits_nr, date_compare); - if (writer.show_progress) - writer.progress = start_progress("Selecting bitmap commits", 0); - if (indexed_commits_nr < 100) { for (i = 0; i < indexed_commits_nr; ++i) push_bitmapped_commit(indexed_commits[i]); return; } + if (writer.show_progress) + writer.progress = start_progress("Selecting bitmap commits", 0); + for (;;) { struct commit *chosen = NULL; --- 8< --- And I don't think it's worth adding display() calls to that loop, because it has so few iterations and it does barely anything per iteration.