summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorAndy Whitcroft <apw@shadowen.org>2008-10-16 07:02:19 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-16 20:21:35 +0200
commit01fa91471e9559d72c0c93ea7cca6f9fe6c2d1c3 (patch)
treed019ae001cd1ec82eff617388dce2d0ce9ac3159 /scripts
parentcheckpatch: complex macros -- fix up extension handling (diff)
downloadlinux-01fa91471e9559d72c0c93ea7cca6f9fe6c2d1c3.tar.xz
linux-01fa91471e9559d72c0c93ea7cca6f9fe6c2d1c3.zip
checkpatch: fix up comment checks search to scan the entire block
We are not counting the lines in the block correctly which causes the comment scan to stop prematurly and thus miss comments which end at the end of the block. Fix this up. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/checkpatch.pl11
1 files changed, 8 insertions, 3 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 586f9a4f0ad0..482768cd5790 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1029,9 +1029,14 @@ sub process {
# edge is a close comment then we must be in a comment
# at context start.
my $edge;
- for (my $ln = $linenr + 1; $ln < ($linenr + $realcnt); $ln++) {
- next if ($line =~ /^-/);
- ($edge) = ($rawlines[$ln - 1] =~ m@(/\*|\*/)@);
+ my $cnt = $realcnt;
+ for (my $ln = $linenr + 1; $cnt > 0; $ln++) {
+ next if (defined $rawlines[$ln - 1] &&
+ $rawlines[$ln - 1] =~ /^-/);
+ $cnt--;
+ #print "RAW<$rawlines[$ln - 1]>\n";
+ ($edge) = (defined $rawlines[$ln - 1] &&
+ $rawlines[$ln - 1] =~ m@(/\*|\*/)@);
last if (defined $edge);
}
if (defined $edge && $edge eq '*/') {