Skip to content

Commit d89d3b2

Browse files
pmachatakuba-moo
authored andcommitted
selftests: defer: Allow spaces in arguments of deferred commands
Currently the way deferred commands are stored and invoked causes any whitespace to act as an argument separator when the command is executed. To make it possible to use spaces in deferred commands, store the commands quoted, and then eval the string prior to execution. Fixes: a6e263f ("selftests: net: lib: Introduce deferred commands") Signed-off-by: Petr Machata <[email protected]> Acked-by: Nikolay Aleksandrov <[email protected]> Link: https://patch.msgid.link/6c2523139a6f99103889c9c9fedcdc66a75441f4.1757004393.git.petrm@nvidia.com Signed-off-by: Jakub Kicinski <[email protected]>
1 parent 21446c0 commit d89d3b2

File tree

1 file changed

+2
-2
lines changed
  • tools/testing/selftests/net/lib/sh

1 file changed

+2
-2
lines changed

tools/testing/selftests/net/lib/sh/defer.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ __defer__run()
3939
local defer_ix=$1; shift
4040
local defer_key=$(__defer__defer_key $track $defer_ix)
4141

42-
${__DEFER__JOBS[$defer_key]}
42+
eval ${__DEFER__JOBS[$defer_key]}
4343
unset __DEFER__JOBS[$defer_key]
4444
}
4545

@@ -49,7 +49,7 @@ __defer__schedule()
4949
local ndefers=$(__defer__ndefers $track)
5050
local ndefers_key=$(__defer__ndefer_key $track)
5151
local defer_key=$(__defer__defer_key $track $ndefers)
52-
local defer="$@"
52+
local defer="${@@Q}"
5353

5454
__DEFER__JOBS[$defer_key]="$defer"
5555
__DEFER__NJOBS[$ndefers_key]=$((ndefers + 1))

0 commit comments

Comments
 (0)