]> xenbits.xensource.com Git - libvirt.git/commitdiff
bracket-spacing: Don't modify current line
authorMartin Kletzander <mkletzan@redhat.com>
Thu, 13 Nov 2014 14:04:52 +0000 (15:04 +0100)
committerMartin Kletzander <mkletzan@redhat.com>
Fri, 14 Nov 2014 16:13:36 +0000 (17:13 +0100)
In bracket-spacing.pl, the current $line is being modified in $data.
That, however, spoils that $data for another check.  Introduce new
$tmpdata variable that can be used for temporary modifications.  The
difference between $data and $line is that $data are as much cleaned as
possible from non-code blocks and these changes must be kept.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
build-aux/bracket-spacing.pl

index ac01a56fe87d24ea7934192e86efbc2e91c74a8e..5fce2b786c7915e5c2c51d496c68837da41a19d9 100755 (executable)
@@ -31,6 +31,8 @@ foreach my $file (@ARGV) {
 
     while (defined (my $line = <FILE>)) {
         my $data = $line;
+        # For temporary modifications
+        my $tmpdata;
 
         # Kill any quoted , ; = or "
         $data =~ s/'[";,=]'/'X'/g;
@@ -77,12 +79,15 @@ foreach my $file (@ARGV) {
         #
         #  foo (*bar, wizz);
         #
-        while ($data =~ /(\w+)\s\((?!\*)/) {
+        # We also don't want to spoil the $data so it can be used
+        # later on.
+        $tmpdata = $data;
+        while ($tmpdata =~ /(\w+)\s\((?!\*)/) {
             my $kw = $1;
 
             # Allow space after keywords only
             if ($kw =~ /^(if|for|while|switch|return)$/) {
-                $data =~ s/($kw\s\()/XXX(/;
+                $tmpdata =~ s/($kw\s\()/XXX(/;
             } else {
                 print "$file:$.: $line";
                 $ret = 1;
@@ -147,9 +152,10 @@ foreach my $file (@ARGV) {
 
         # Require spaces around assignment '=', compounds and '=='
         # with the exception of virAssertCmpInt()
-        $data =~ s/(virAssertCmpInt\(.* ).?=,/$1op,/;
-        while ($data =~ /[^ ]\b[!<>&|\-+*\/%\^=]?=[^=]/ ||
-               $data =~ /=[^= \\\n]/) {
+        $tmpdata = $data;
+        $tmpdata =~ s/(virAssertCmpInt\(.* ).?=,/$1op,/;
+        while ($tmpdata =~ /[^ ]\b[!<>&|\-+*\/%\^=]?=[^=]/ ||
+               $tmpdata =~ /=[^= \\\n]/) {
             print "$file:$.: $line";
             $ret = 1;
             last;