summaryrefslogtreecommitdiff
path: root/scripts/checkpatch.pl
diff options
context:
space:
mode:
authorAndy Whitcroft <apw@shadowen.org>2008-10-15 22:02:32 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-16 11:21:37 -0700
commitf16fa28f7b3d95e989fc64c8480e44c1bcf4bac3 (patch)
treee9a6c9f84efc907f4e24a96f386ea1645536fc90 /scripts/checkpatch.pl
parent8ed22cad9ce16e3d8915ae75544a133c3050d96f (diff)
checkpatch: suspect code indent must stop at #else/#elif
When we hit and #else or #elif we know we are meeting an alternative piece of code. All bets are off on indent if we did not see the open of the control so stop checking. 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/checkpatch.pl')
-rwxr-xr-xscripts/checkpatch.pl6
1 files changed, 6 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 4680ccf7760c..c479bdefc779 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1468,6 +1468,12 @@ sub process {
while ($cond_ptr != $cond_lines) {
$cond_ptr = $cond_lines;
+ # If we see an #else/#elif then the code
+ # is not linear.
+ if ($s =~ /^\s*\#\s*(?:else|elif)/) {
+ $check = 0;
+ }
+
# Ignore:
# 1) blank lines, they should be at 0,
# 2) preprocessor lines, and