Skip to content
  • Ævar Arnfjörð Bjarmason's avatar
    progress API: unify stop_progress{,_msg}(), fix trace2 bug · 74900a6b
    Ævar Arnfjörð Bjarmason authored and Junio C Hamano's avatar Junio C Hamano committed
    Fix a bug that's been with us ever since 98a13647 (trace2: log
    progress time and throughput, 2020-05-12), when the
    stop_progress_msg() API was used we didn't log a "region_leave" for
    the "region_enter" we start in "start_progress_delay()".
    
    The only user of the "stop_progress_msg()" function is
    "index-pack". Let's add a previously failing test to check that we
    have the same number of "region_enter" and "region_leave" events, with
    "-v" we'll log progress even in the test environment.
    
    In addition to that we've had a submarine bug here introduced with
    9d81ecb5
    
     (progress: add sparse mode to force 100% complete message,
    2019-03-21). The "start_sparse_progress()" API would only do the right
    thing if the progress was ended with "stop_progress()", not
    "stop_progress_msg()".
    
    The only user of that API uses "stop_progress()", but let's still fix
    that along with the trace2 issue by making "stop_progress()" a trivial
    wrapper for "stop_progress_msg()".
    
    We can also drop the "if (progress)" test from
    "finish_if_sparse()". It's now a helper for the small
    "stop_progress_msg()" function. We'll already have returned from it if
    "progress" is "NULL".
    
    Signed-off-by: default avatarÆvar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    74900a6b