Re: [PATCH v2] builtins + test helpers: use return instead of exit() in cmd_*
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 9, 2021, 03:38 UTC
- Message-ID
- <xmqqy2bjlnbw.fsf@gitster.g>
- In-Reply-To
- <87im2n3gje.fsf@evledraar.gmail.com>
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
> So it's really the opposite of what you're saying. If you have cleanups > that are truly important, i.e. so important that you'd like to notify > the user with a non-zero exit code if they fail, you *don't* want them > in an atexit handler. That won't work.
Ah, OK. What I had in mind was things like removing the directory "clone" attempted to create and populate, removing temporary files, etc. when a function that is not marked as NORETURN calls die(), by the atexit handler. But you're right. We leave a final clean-up for normal returns (i.e. when cmd_foo() intends to return or exit with 0) to be done to the caller that is git.::run_builtin().
Thanks.