]> git.ipfire.org Git - thirdparty/git.git/commitdiff
notes: simplify default operation mode arguments check
authorSZEDER Gábor <szeder.dev@gmail.com>
Mon, 5 Sep 2022 18:50:06 +0000 (20:50 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 7 Sep 2022 19:06:12 +0000 (12:06 -0700)
'git notes' has a default operation mode, but when invoked without a
subcommand it doesn't accept any arguments (although the 'list'
subcommand implementing the default operation mode does accept
arguments).  The condition checking this ended up a bit awkward, so
let's make it clearer.

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/notes.c

index 42cbae46598e36b7bc7d158be59f2a6a949d8031..60410af572b3e0d61e47cf73bf654de250a77005 100644 (file)
@@ -995,7 +995,7 @@ static int get_ref(int argc, const char **argv, const char *prefix)
 int cmd_notes(int argc, const char **argv, const char *prefix)
 {
        const char *override_notes_ref = NULL;
-       parse_opt_subcommand_fn *fn = list;
+       parse_opt_subcommand_fn *fn = NULL;
        struct option options[] = {
                OPT_STRING(0, "ref", &override_notes_ref, N_("notes-ref"),
                           N_("use notes from <notes-ref>")),
@@ -1015,9 +1015,12 @@ int cmd_notes(int argc, const char **argv, const char *prefix)
        git_config(git_default_config, NULL);
        argc = parse_options(argc, argv, prefix, options, git_notes_usage,
                             PARSE_OPT_SUBCOMMAND_OPTIONAL);
-       if (fn == list && argc && strcmp(argv[0], "list")) {
-               error(_("unknown subcommand: %s"), argv[0]);
-               usage_with_options(git_notes_usage, options);
+       if (!fn) {
+               if (argc) {
+                       error(_("unknown subcommand: %s"), argv[0]);
+                       usage_with_options(git_notes_usage, options);
+               }
+               fn = list;
        }
 
        if (override_notes_ref) {