diff --git a/builtin-merge.c b/builtin-merge.c index 06b9970306..e97c79e60c 100644 --- a/builtin-merge.c +++ b/builtin-merge.c @@ -66,10 +66,11 @@ static int option_parse_message(const struct option *opt, if (unset) strbuf_setlen(buf, 0); - else { + else if (arg) { strbuf_addf(buf, "%s\n\n", arg); have_message = 1; - } + } else + return error("switch `m' requires a value"); return 0; } diff --git a/t/t7600-merge.sh b/t/t7600-merge.sh index 26cf8dc7c1..5eeb6c2b27 100755 --- a/t/t7600-merge.sh +++ b/t/t7600-merge.sh @@ -221,7 +221,7 @@ test_expect_success 'setup' ' test_debug 'gitk --all' -test_expect_failure 'test option parsing' ' +test_expect_success 'test option parsing' ' test_must_fail git merge -$ c1 && test_must_fail git merge --no-such c1 && test_must_fail git merge -s foobar c1 &&