[10/13] cat-file: report an error on multiple --batch options
diff mbox series

Message ID 20181105064344.GJ25864@sigill.intra.peff.net
State New
Headers show
  • parseopt fixes from -Wunused-parameters
Related show

Commit Message

Jeff King Nov. 5, 2018, 6:43 a.m. UTC
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>
 builtin/cat-file.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff mbox series

diff --git a/builtin/cat-file.c b/builtin/cat-file.c
index 4a5289079c..0f6b692df6 100644
--- a/builtin/cat-file.c
+++ b/builtin/cat-file.c
@@ -596,7 +596,7 @@  static int batch_option_callback(const struct option *opt,
 	struct batch_options *bo = opt->value;
 	if (bo->enabled) {
-		return 1;
+		return error(_("only one batch option may be specified"));
 	bo->enabled = 1;