devtools: fix check of variable declaration inside for
authorDavid Marchand <david.marchand@redhat.com>
Mon, 6 Jul 2020 08:00:22 +0000 (10:00 +0200)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 6 Jul 2020 08:55:19 +0000 (10:55 +0200)
An expression with a space is split by the awk script resulting in
false positive for any patch matching any of the two part of the
expression.
Fix this by using [[:space:]].

Fixes: 43e73483a4b8 ("devtools: forbid variable declaration inside for")

Signed-off-by: David Marchand <david.marchand@redhat.com>
devtools/checkpatches.sh

index 27ab125..58021aa 100755 (executable)
@@ -71,7 +71,7 @@ check_forbidden_additions() { # <patch>
 
        # forbid variable declaration inside "for" loop
        awk -v FOLDERS='.' \
-               -v EXPRESSIONS='for *\\((char|u?int|unsigned|s?size_t)' \
+               -v EXPRESSIONS='for[[:space:]]*\\((char|u?int|unsigned|s?size_t)' \
                -v RET_ON_FAIL=1 \
                -v MESSAGE='Declaring a variable inside for()' \
                -f $(dirname $(readlink -f $0))/check-forbidden-tokens.awk \