diff options
-rw-r--r-- | common-main.c | 9 | ||||
-rw-r--r-- | t/helper/test-trace2.c | 5 |
2 files changed, 9 insertions, 5 deletions
diff --git a/common-main.c b/common-main.c index 71e21dd20a..eafc70718a 100644 --- a/common-main.c +++ b/common-main.c @@ -51,7 +51,10 @@ int main(int argc, const char **argv) result = cmd_main(argc, argv); - trace2_cmd_exit(result); - - return result; + /* + * We define exit() to call trace2_cmd_exit_fl() in + * git-compat-util.h. Whether we reach this or exit() + * elsewhere we'll always run our trace2 exit handler. + */ + exit(result); } diff --git a/t/helper/test-trace2.c b/t/helper/test-trace2.c index f93633f895..59b124bb5f 100644 --- a/t/helper/test-trace2.c +++ b/t/helper/test-trace2.c @@ -262,8 +262,9 @@ static int print_usage(void) * [] the "cmd_name" event has been generated. * [] this writes various "def_param" events for interesting config values. * - * We further assume that if we return (rather than exit()), trace2_cmd_exit() - * will be called by test-tool.c:cmd_main(). + * We return from here and let test-tool.c::cmd_main() pass the exit + * code to common-main.c::main(), which will use it to call + * trace2_cmd_exit(). */ int cmd__trace2(int argc, const char **argv) { |