From 7461a98690fe9c31f5f25369cbfc95bc19838923 Mon Sep 17 00:00:00 2001 From: David Keitel Date: Wed, 23 Mar 2016 20:57:21 -0700 Subject: checkpatch: warn on subject line not followed by blank line Fixed case when no warning generated for long subject line that is wrapped to more than one line, and all lines are less than line limit. New warning message added: "non-blank line after summary line" Now there are two warnings possible for the subject line, the original line over limit and the new one. Depending on the error(s) any combination of the two warnings are possible. Commit text requirements now: 1) Must be less than 75 characters 2) Must be followed by blank line. Signed-off-by: David Keitel --- scripts/checkpatch.pl | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'scripts') diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 395e4818b5f8..9734862a2e8a 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -14,6 +14,7 @@ use Term::ANSIColor qw(:constants); use constant BEFORE_SHORTTEXT => 0; use constant IN_SHORTTEXT => 1; use constant AFTER_SHORTTEXT => 2; +use constant CHECK_NEXT_SHORTTEXT => 3; use constant SHORTTEXT_LIMIT => 75; my $P = $0; @@ -1982,6 +1983,8 @@ sub process { my $prevrawline=""; my $stashline=""; my $stashrawline=""; + my $subjectline=""; + my $sublinenr=""; my $length; my $indent; @@ -2243,8 +2246,21 @@ sub process { SHORTTEXT_LIMIT . " characters\n" . $herecurr); } - } elsif ($line=~/^Subject: \[[^\]]*\] (.*)/) { + } elsif ($shorttext == CHECK_NEXT_SHORTTEXT) { $shorttext = IN_SHORTTEXT; +# Check for Subject line followed by a blank line. + if (length($line) != 0) { + WARN("NONBLANK_AFTER_SUMMARY", + "non-blank line after summary " . + "line\n" . $sublinenr . $here . + "\n" . $subjectline . "\n" . + $line . "\n"); + } + } elsif ($line=~/^Subject: \[[^\]]*\] (.*)/) { + $shorttext = CHECK_NEXT_SHORTTEXT; + $subjectline = $line; + $sublinenr = "#$linenr & "; +# Check for Subject line less than line limit if (length($1) > SHORTTEXT_LIMIT) { WARN("LONG_SUMMARY_LINE", "summary line over " . -- cgit v1.2.3