checkpatch: update signature "might be better as" warning
email header lines can look like signature tags. It's valid to have multiple email recipients on a single line but not valid to have multiple signatures on a single line. Validate signatures only when not in the email headers. Clear the $in_commit_log flag when the patch filename appears. Add '-' to the valid chars in a message header for headers like "Message-Id:" and "In-Reply-To:". Signed-off-by: Joe Perches <joe@perches.com> Reported-by: Julia Lawall <julia.lawall@lip6.fr> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
96b62067f9
commit
270c49a088
|
@ -1504,9 +1504,11 @@ sub process {
|
||||||
if ($line =~ /^diff --git.*?(\S+)$/) {
|
if ($line =~ /^diff --git.*?(\S+)$/) {
|
||||||
$realfile = $1;
|
$realfile = $1;
|
||||||
$realfile =~ s@^([^/]*)/@@;
|
$realfile =~ s@^([^/]*)/@@;
|
||||||
|
$in_commit_log = 0;
|
||||||
} elsif ($line =~ /^\+\+\+\s+(\S+)/) {
|
} elsif ($line =~ /^\+\+\+\s+(\S+)/) {
|
||||||
$realfile = $1;
|
$realfile = $1;
|
||||||
$realfile =~ s@^([^/]*)/@@;
|
$realfile =~ s@^([^/]*)/@@;
|
||||||
|
$in_commit_log = 0;
|
||||||
|
|
||||||
$p1_prefix = $1;
|
$p1_prefix = $1;
|
||||||
if (!$file && $tree && $p1_prefix ne '' &&
|
if (!$file && $tree && $p1_prefix ne '' &&
|
||||||
|
@ -1546,7 +1548,8 @@ sub process {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Check signature styles
|
# Check signature styles
|
||||||
if ($line =~ /^(\s*)($signature_tags)(\s*)(.*)/) {
|
if (!$in_header_lines &&
|
||||||
|
$line =~ /^(\s*)($signature_tags)(\s*)(.*)/) {
|
||||||
my $space_before = $1;
|
my $space_before = $1;
|
||||||
my $sign_off = $2;
|
my $sign_off = $2;
|
||||||
my $space_after = $3;
|
my $space_after = $3;
|
||||||
|
@ -1623,7 +1626,7 @@ sub process {
|
||||||
# Check if it's the start of a commit log
|
# Check if it's the start of a commit log
|
||||||
# (not a header line and we haven't seen the patch filename)
|
# (not a header line and we haven't seen the patch filename)
|
||||||
if ($in_header_lines && $realfile =~ /^$/ &&
|
if ($in_header_lines && $realfile =~ /^$/ &&
|
||||||
$rawline !~ /^(commit\b|from\b|\w+:).+$/i) {
|
$rawline !~ /^(commit\b|from\b|[\w-]+:).+$/i) {
|
||||||
$in_header_lines = 0;
|
$in_header_lines = 0;
|
||||||
$in_commit_log = 1;
|
$in_commit_log = 1;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue