summaryrefslogtreecommitdiff
path: root/cmd/stackprot_test.c
diff options
context:
space:
mode:
authorRasmus Villemoes <[email protected]>2026-03-30 16:01:06 +0200
committerTom Rini <[email protected]>2026-04-02 16:00:29 -0600
commitf7e7c55e53e80100c327b9cb0512c069acf80ab5 (patch)
tree76026da1264f12757d7bee3a0cb46ae48a0b278e /cmd/stackprot_test.c
parentd1cd6733917fa67c262fbad2520da93d788e17f7 (diff)
cmd: test: add bug-compatibility special case for 'test -n'
It turns out that there is lots of code in the wild, including in the U-Boot tree itself, which used to rely on test -n $somevar to yield false when $somevar is not defined or empty. See for example all the occurrences of 'test -n $fdtfile'. That was really only a quirk of the implementation that refused calls with argc < 3, and not because it was interpreted as test -n "$somevar" which is how this should be spelled. While not exactly conforming to POSIX, we can accomodate such scripts by special-casing a single argument "-n" to be interpreted as if it comes from code as above with empty $somevar. Since we only just added the ability to test a string for emptiness using the single-argument form, it is very unlikely that there is code doing test "$str" which would now fail if $str happens to be exactly "-n"; such a test should really always be spelled test -n "$str" Fixes: 8b0619579b2 ("cmd: test: fix handling of single-argument form of test") Reported-by: Franz Schnyder <[email protected]> Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Simon Glass <[email protected]>
Diffstat (limited to 'cmd/stackprot_test.c')
0 files changed, 0 insertions, 0 deletions