]> git.ipfire.org Git - thirdparty/git.git/commitdiff
apply: return -1 from option callback instead of calling exit(1)
authorJeff King <peff@peff.net>
Mon, 5 Nov 2018 06:43:59 +0000 (01:43 -0500)
committerJunio C Hamano <gitster@pobox.com>
Tue, 6 Nov 2018 03:55:36 +0000 (12:55 +0900)
The option callback for "apply --whitespace" exits with status "1" on
error. It makes more sense for it to just return an error to
parse-options. That code will exit, too, but it will use status "129"
that is customary for option errors.

The exit() dates back to aaf6c447aa (builtin/apply: make
parse_whitespace_option() return -1 instead of die()ing, 2016-08-08).
That commit gives no reason why we'd prefer the current exit status (it
looks like it was just bumping the "die" up a level in the callstack,
but did not go as far as it could have).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
apply.c

diff --git a/apply.c b/apply.c
index d1ca6addebd4e8625116f3c618bb246b9e778b21..c4c9f849b1bae6b4c29d01ac1162a0b47ba3cb9b 100644 (file)
--- a/apply.c
+++ b/apply.c
@@ -4812,7 +4812,7 @@ static int apply_option_parse_whitespace(const struct option *opt,
        struct apply_state *state = opt->value;
        state->whitespace_option = arg;
        if (parse_whitespace_option(state, arg))
-               exit(1);
+               return -1;
        return 0;
 }