diff options
author | Steven Rostedt <srostedt@redhat.com> | 2011-12-22 11:32:52 -0500 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2011-12-22 21:59:36 -0500 |
commit | cad9666980c1c1a76345f36a68e96fda3d78d857 (patch) | |
tree | 4bdf4b26e5769a91807f64a604dbef1782ca96d0 /tools/testing | |
parent | 2b29b2f8f869847d437b525d4cf027c09dc38286 (diff) |
ktest: Evaluate options before processing them
All options can take variables "${var}". Before doing any processing
or decision making on the content of an option, evaluate it incase
there are variables that may change the outcome.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'tools/testing')
-rwxr-xr-x | tools/testing/ktest/ktest.pl | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/testing/ktest/ktest.pl b/tools/testing/ktest/ktest.pl index 59738aa6ca73..04a7bb573daa 100755 --- a/tools/testing/ktest/ktest.pl +++ b/tools/testing/ktest/ktest.pl @@ -416,10 +416,12 @@ sub process_variables { sub set_value { my ($lvalue, $rvalue, $override, $overrides, $name) = @_; - if ($buildonly && $lvalue =~ /^TEST_TYPE(\[.*\])?$/ && $rvalue ne "build") { + my $prvalue = process_variables($rvalue); + + if ($buildonly && $lvalue =~ /^TEST_TYPE(\[.*\])?$/ && $prvalue ne "build") { # Note if a test is something other than build, then we # will need other manditory options. - if ($rvalue ne "install") { + if ($prvalue ne "install") { $buildonly = 0; } else { # install still limits some manditory options. @@ -435,13 +437,12 @@ sub set_value { } die "$name: $.: Option $lvalue defined more than once!\n$extra"; } - ${$overrides}{$lvalue} = $rvalue; + ${$overrides}{$lvalue} = $prvalue; } if ($rvalue =~ /^\s*$/) { delete $opt{$lvalue}; } else { - $rvalue = process_variables($rvalue); - $opt{$lvalue} = $rvalue; + $opt{$lvalue} = $prvalue; } } |