From 22d6bea8820612e6a1483d8b6cfd820f1417ae6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Mon, 22 Jul 2019 10:43:19 +0200 Subject: [PATCH 1/2] pstore: refuse to run if arguments are specified (This is why the --help chech passed.) --- src/pstore/pstore.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/pstore/pstore.c b/src/pstore/pstore.c index 0c4e2f08a3..60519e117e 100644 --- a/src/pstore/pstore.c +++ b/src/pstore/pstore.c @@ -361,6 +361,10 @@ static int run(int argc, char *argv[]) { log_open(); + if (argc > 1) + return log_error_errno(SYNTHETIC_ERRNO(EINVAL), + "This program takes no arguments."); + /* Ignore all parse errors */ (void) parse_config(); From cdfa3f0c76f733b34cae75a277ba621716b33f2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Mon, 22 Jul 2019 10:59:19 +0200 Subject: [PATCH 2/2] meson: catch programs which ignore arguments Don't try to use <<<. It seems to not work properly with old bash versions or something. --- tools/meson-check-help.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) 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