diff options
author | Andy Whitcroft <apw@canonical.com> | 2009-01-15 16:51:04 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-01-15 19:39:38 -0500 |
commit | a27506459c5e6ccc8437fca0adb6d3759c883c28 (patch) | |
tree | 7ebce7fae5d7d989952bbc152aa270043445ab1c /scripts/checkpatch.pl | |
parent | c91192d66d6cea7878b8542c9d9f1873971aba92 (diff) |
checkpatch: handle missing #if open in context
If the #if opening statement is not in the context then the context stack
can be empty. Handle this by ensuring there is always a blank entry in
the stack.
Signed-off-by: Andy Whitcroft <apw@canonical.com>
Tested-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts/checkpatch.pl')
-rwxr-xr-x | scripts/checkpatch.pl | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 7bed4ed2c519..eefef65fa584 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl | |||
@@ -411,13 +411,15 @@ sub ctx_statement_block { | |||
411 | 411 | ||
412 | my $type = ''; | 412 | my $type = ''; |
413 | my $level = 0; | 413 | my $level = 0; |
414 | my @stack = ([$type, $level]); | 414 | my @stack = (); |
415 | my $p; | 415 | my $p; |
416 | my $c; | 416 | my $c; |
417 | my $len = 0; | 417 | my $len = 0; |
418 | 418 | ||
419 | my $remainder; | 419 | my $remainder; |
420 | while (1) { | 420 | while (1) { |
421 | @stack = (['', 0]) if ($#stack == -1); | ||
422 | |||
421 | #warn "CSB: blk<$blk> remain<$remain>\n"; | 423 | #warn "CSB: blk<$blk> remain<$remain>\n"; |
422 | # If we are about to drop off the end, pull in more | 424 | # If we are about to drop off the end, pull in more |
423 | # context. | 425 | # context. |