tr2: do compiler enum check in trace2_collect_process_info()

Change code added in 2f732bf15e (tr2: log parent process name,
2021-07-21) to use a switch statement without a "default" branch to
have the compiler error if this code ever drifts out of sync with the
members of the "enum trace2_process_info_reason".

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Acked-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason
2021-08-27 10:02:17 +02:00
committed by Junio C Hamano
parent 6eccfc3adf
commit 326460a870

View File

@ -31,29 +31,30 @@ static void get_ancestry_names(struct strvec *names)
void trace2_collect_process_info(enum trace2_process_info_reason reason) void trace2_collect_process_info(enum trace2_process_info_reason reason)
{ {
struct strvec names = STRVEC_INIT;
if (!trace2_is_enabled()) if (!trace2_is_enabled())
return; return;
if (reason == TRACE2_PROCESS_INFO_EXIT) switch (reason) {
case TRACE2_PROCESS_INFO_EXIT:
/* /*
* The Windows version of this calls its * The Windows version of this calls its
* get_peak_memory_info() here. We may want to insert * get_peak_memory_info() here. We may want to insert
* similar process-end statistics here in the future. * similar process-end statistics here in the future.
*/ */
return; break;
case TRACE2_PROCESS_INFO_STARTUP:
if (reason == TRACE2_PROCESS_INFO_STARTUP) {
/* /*
* NEEDSWORK: we could do the entire ptree in an array instead, * NEEDSWORK: we could do the entire ptree in an array instead,
* see compat/win32/trace2_win32_process_info.c. * see compat/win32/trace2_win32_process_info.c.
*/ */
struct strvec names = STRVEC_INIT;
get_ancestry_names(&names); get_ancestry_names(&names);
if (names.nr) if (names.nr)
trace2_cmd_ancestry(names.v); trace2_cmd_ancestry(names.v);
strvec_clear(&names); strvec_clear(&names);
break;
} }
return; return;