__ktap_test() may be called without the optional third argument which is
an issue for scripts using `set -u` to detect uninitialized variables
and potential bugs.

Fix this optional "directive" argument by either using the third
argument or an empty string.

This was discovered while developing tests for script control execution:
https://lore.kernel.org/r/20241112191858.162021-7-...@digikod.net

Cc: Kees Cook <k...@kernel.org>
Cc: Nícolas F. R. A. Prado <nfrapr...@collabora.com>
Cc: Shuah Khan <sk...@linuxfoundation.org>
Signed-off-by: Mickaël Salaün <m...@digikod.net>
---
 tools/testing/selftests/kselftest/ktap_helpers.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/kselftest/ktap_helpers.sh 
b/tools/testing/selftests/kselftest/ktap_helpers.sh
index 79a125eb24c2..14e7f3ec3f84 100644
--- a/tools/testing/selftests/kselftest/ktap_helpers.sh
+++ b/tools/testing/selftests/kselftest/ktap_helpers.sh
@@ -40,7 +40,7 @@ ktap_skip_all() {
 __ktap_test() {
        result="$1"
        description="$2"
-       directive="$3" # optional
+       directive="${3:-}" # optional
 
        local directive_str=
        [ ! -z "$directive" ] && directive_str="# $directive"
-- 
2.47.1


Reply via email to