cat-file: report an error on multiple --batch options

The options callback for --batch and --batch-check detects when the two mutually incompatible options are used. But it simply returns an error code to parse-options, meaning the program will quit without any kind of message to the user. Instead, let's use error() to print something and return -1. Note that this flips the error return from 1 to -1, but negative values are more idiomatic here (and parse-options treats them the same). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jeff King committed Nov 5, 2018 at 01:43 UTC 0eb8d3767c8f5c87f3bdcbbf9d3d5f73c39422d9
1 file changed +1 -1
builtin/cat-file.c
+1 -1
@@ -596,7 +596,7 @@ static int batch_option_callback(const struct option *opt,
596 struct batch_options *bo = opt->value;
597
598 if (bo->enabled) {
599 - return 1;
599 + return error(_("only one batch option may be specified"));
600 }
601
602 bo->enabled = 1;