[PATCH] checkpatch: Improve quoted string and line continuation test

From: Joe Perches
Date: Tue Dec 19 2017 - 10:54:26 EST


Given this patch context,

+#define EFI_ST_DISK_IMG { \
+ 0x00000240, "\xbe\x5b\x7c\xac\x22\xc0\x74\x0b" /* .[|.".t. */ \
+ }

the current code misreports a quoted string line continuation defect
as there is a single quote in comment.

The 'raw' line should not be tested for quote count, the comment
substituted line should be instead.

Reported-by: Heinrich Schuchardt <xypron.glpk@xxxxxx>
Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
---
scripts/checkpatch.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 168687ae24fa..7c635146cb80 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -5312,7 +5312,7 @@ sub process {
}

# check for line continuations in quoted strings with odd counts of "
- if ($rawline =~ /\\$/ && $rawline =~ tr/"/"/ % 2) {
+ if ($rawline =~ /\\$/ && $sline =~ tr/"/"/ % 2) {
WARN("LINE_CONTINUATIONS",
"Avoid line continuations in quoted strings\n" . $herecurr);
}
--
2.15.0