Use find instead of ls to avoid splitting filenames that contain spaces.
Use rm -f instead of if ... then rm ...; fi. This patch addresses all
shellcheck complaints about the run_tests.sh shell script.

Cc: Peter Zijlstra <[email protected]>
Cc: Waiman Long <[email protected]>
Cc: Johannes Berg <[email protected]>
Signed-off-by: Bart Van Assche <[email protected]>
---
 tools/lib/lockdep/run_tests.sh | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/tools/lib/lockdep/run_tests.sh b/tools/lib/lockdep/run_tests.sh
index 9f31f84e7fac..253719ee6377 100755
--- a/tools/lib/lockdep/run_tests.sh
+++ b/tools/lib/lockdep/run_tests.sh
@@ -7,7 +7,7 @@ if ! make >/dev/null; then
     exit 1
 fi
 
-for i in `ls tests/*.c`; do
+find tests -name '*.c' | sort | while read -r i; do
        testname=$(basename "$i" .c)
        echo -ne "$testname... "
        if gcc -o "tests/$testname" -pthread "$i" liblockdep.a -Iinclude 
-D__USE_LIBLOCKDEP &&
@@ -16,12 +16,10 @@ for i in `ls tests/*.c`; do
        else
                echo "FAILED!"
        fi
-       if [ -f "tests/$testname" ]; then
-               rm tests/$testname
-       fi
+       rm -f "tests/$testname"
 done
 
-for i in `ls tests/*.c`; do
+find tests -name '*.c' | sort | while read -r i; do
        testname=$(basename "$i" .c)
        echo -ne "(PRELOAD) $testname... "
        if gcc -o "tests/$testname" -pthread -Iinclude "$i" &&
@@ -30,7 +28,5 @@ for i in `ls tests/*.c`; do
        else
                echo "FAILED!"
        fi
-       if [ -f "tests/$testname" ]; then
-               rm tests/$testname
-       fi
+       rm -f "tests/$testname"
 done
-- 
2.20.0.rc2.403.gdbc3b29805-goog

Reply via email to