[PATCH 1/4] checkpatch: Add fix_insert_line and fix_delete_line helpers

From: Joe Perches
Date: Thu Jul 10 2014 - 14:55:51 EST


Neaten the uses of patch/file line insertions or deletions.
Hide the mechanism used.

Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
---
scripts/checkpatch.pl | 65 +++++++++++++++++++++++----------------------------
1 file changed, 29 insertions(+), 36 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index f3d9a88..7c29069 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1593,6 +1593,27 @@ sub fix_inserted_deleted_lines {
return @lines;
}

+sub fix_insert_line {
+ my ($linenr, $line) = @_;
+
+ my $inserted = {
+ LINENR => $linenr,
+ LINE => $line,
+ };
+ push(@fixed_inserted, $inserted);
+}
+
+sub fix_delete_line {
+ my ($linenr, $line) = @_;
+
+ my $deleted = {
+ LINENR => $linenr,
+ LINE => $line,
+ };
+
+ push(@fixed_deleted, $deleted);
+}
+
sub ERROR {
my ($type, $msg) = @_;

@@ -2447,11 +2468,7 @@ sub process {
if (CHK("LINE_SPACING",
"Please use a blank line after function/struct/union/enum declarations\n" . $hereprev) &&
$fix) {
- my $inserted = {
- LINENR => $fixlinenr,
- LINE => "\+",
- };
- push(@fixed_inserted, $inserted);
+ fix_insert_line($fixlinenr, "\+");
}
}

@@ -2462,11 +2479,7 @@ sub process {
if (CHK("LINE_SPACING",
"Please don't use multiple blank lines\n" . $hereprev) &&
$fix) {
- my $deleted = {
- LINENR => $fixlinenr,
- LINE => $rawline,
- };
- push(@fixed_deleted, $deleted);
+ fix_delete_line($fixlinenr, $rawline);
}

$last_blank_line = $linenr;
@@ -2509,11 +2522,7 @@ sub process {
if (WARN("LINE_SPACING",
"Missing a blank line after declarations\n" . $hereprev) &&
$fix) {
- my $inserted = {
- LINENR => $fixlinenr,
- LINE => "\+",
- };
- push(@fixed_inserted, $inserted);
+ fix_insert_line($fixlinenr, "\+");
}
}

@@ -2868,31 +2877,15 @@ sub process {
$prevline =~ /(?:^|[^=])=\s*$/) {
if (ERROR("OPEN_BRACE",
"that open brace { should be on the previous line\n" . $hereprev) &&
- $fix && $prevline =~ /^\+/) {
- my $deleted = {
- LINENR => $fixlinenr - 1,
- LINE => $prevrawline,
- };
- push(@fixed_deleted, $deleted);
- $deleted = {
- LINENR => $fixlinenr,
- LINE => $rawline,
- };
- push(@fixed_deleted, $deleted);
+ $fix && $prevline =~ /^\+/ && $line =~ /^\+/) {
+ fix_delete_line($fixlinenr - 1, $prevrawline);
+ fix_delete_line($fixlinenr, $rawline);
my $fixedline = $prevrawline;
$fixedline =~ s/\s*=\s*$/ = {/;
- my $inserted = {
- LINENR => $fixlinenr,
- LINE => $fixedline,
- };
- push(@fixed_inserted, $inserted);
+ fix_insert_line($fixlinenr, $fixedline);
$fixedline = $line;
$fixedline =~ s/^(.\s*){\s*/$1/;
- $inserted = {
- LINENR => $fixlinenr,
- LINE => $fixedline,
- };
- push(@fixed_inserted, $inserted);
+ fix_insert_line($fixlinenr, $fixedline);
}
}

--
1.8.1.2.459.gbcd45b4.dirty

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/