diff options
-rw-r--r-- | src/pstore/pstore.c | 4 | ||||
-rwxr-xr-x | tools/meson-check-help.sh | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/pstore/pstore.c b/src/pstore/pstore.c index 4bb1293e15..df3efb3c8d 100644 --- a/src/pstore/pstore.c +++ b/src/pstore/pstore.c @@ -359,6 +359,10 @@ static int run(int argc, char *argv[]) { log_setup_service(); + if (argc > 1) + return log_error_errno(SYNTHETIC_ERRNO(EINVAL), + "This program takes no arguments."); + /* Ignore all parse errors */ (void) parse_config(); diff --git a/tools/meson-check-help.sh b/tools/meson-check-help.sh index a0e304ca9c..efe7ed4e56 100755 --- a/tools/meson-check-help.sh +++ b/tools/meson-check-help.sh @@ -10,14 +10,20 @@ if "$1" --help | grep -v 'default:' | grep -E -q '.{80}.'; then exit 1 fi +# --help prints something. Also catches case where args are ignored. +if ! "$1" --help | grep -q .; then + echo "$(basename "$1") --help output is empty." + exit 2 +fi + # no --help output to stdout if "$1" --help 2>&1 1>/dev/null | grep .; then echo "$(basename "$1") --help prints to stderr" - exit 2 + exit 3 fi # error output to stderr if ! "$1" --no-such-parameter 2>&1 1>/dev/null | grep -q .; then echo "$(basename "$1") with an unknown parameter does not print to stderr" - exit 3 + exit 4 fi |