diff --git a/src/cmd.c b/src/cmd.c index 6cc748e8c97000744268845946a7e336905dcad2..2516c37f6fa92250df9752cbec79c3755d41f3ad 100644 --- a/src/cmd.c +++ b/src/cmd.c @@ -24,15 +24,6 @@ lkt_cmd_parse(struct lkt_cmd_opt *opts, int argc, const char **argv, void (*help it = opts + (++offset); } - /* The default function */ - if (!it->name && it->call) { - struct lkt_cmd_args arguments = { - .argc = argc, - .argv = (const char **) argv, - }; - it->call(&arguments); - } - /* Now search for a unique match */ if (count > 1) goto not_exclusive; @@ -50,6 +41,15 @@ lkt_cmd_parse(struct lkt_cmd_opt *opts, int argc, const char **argv, void (*help exit(EXIT_FAILURE); not_found: + /* The default function */ + if (!it->name && it->call) { + struct lkt_cmd_args arguments = { + .argc = argc, + .argv = (const char **) argv, + }; + it->call(&arguments); + } + fprintf(stderr, "Command '%s' could not be found\n", argv[0]); exit(EXIT_FAILURE);