Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(786)

Side by Side Diff: Tools/Scripts/svn-create-patch

Issue 20652002: Fix trailing whitespace in scripts and misc. files (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Don't change literal diff. Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Tools/Scripts/svn-apply ('k') | Tools/Scripts/svn-unapply » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/perl -w 1 #!/usr/bin/perl -w
2 2
3 # Copyright (C) 2005, 2006 Apple Computer, Inc. All rights reserved. 3 # Copyright (C) 2005, 2006 Apple Computer, Inc. All rights reserved.
4 # 4 #
5 # Redistribution and use in source and binary forms, with or without 5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions 6 # modification, are permitted provided that the following conditions
7 # are met: 7 # are met:
8 # 8 #
9 # 1. Redistributions of source code must retain the above copyright 9 # 1. Redistributions of source code must retain the above copyright
10 # notice, this list of conditions and the following disclaimer. 10 # notice, this list of conditions and the following disclaimer.
11 # 2. Redistributions in binary form must reproduce the above copyright 11 # 2. Redistributions in binary form must reproduce the above copyright
12 # notice, this list of conditions and the following disclaimer in the 12 # notice, this list of conditions and the following disclaimer in the
13 # documentation and/or other materials provided with the distribution. 13 # documentation and/or other materials provided with the distribution.
14 # 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14 # 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
15 # its contributors may be used to endorse or promote products derived 15 # its contributors may be used to endorse or promote products derived
16 # from this software without specific prior written permission. 16 # from this software without specific prior written permission.
17 # 17 #
18 # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 18 # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
19 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21 # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
22 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 } 212 }
213 } 213 }
214 close INFO; 214 close INFO;
215 return ($sourceFile, $sourceRevision); 215 return ($sourceFile, $sourceRevision);
216 } 216 }
217 217
218 sub generateDiff($$) 218 sub generateDiff($$)
219 { 219 {
220 my ($fileData, $prefix) = @_; 220 my ($fileData, $prefix) = @_;
221 my $file = File::Spec->catdir($prefix, $fileData->{path}); 221 my $file = File::Spec->catdir($prefix, $fileData->{path});
222 222
223 if ($ignoreChangelogs && basename($file) eq "ChangeLog") { 223 if ($ignoreChangelogs && basename($file) eq "ChangeLog") {
224 return 0; 224 return 0;
225 } 225 }
226 226
227 my $patch = ""; 227 my $patch = "";
228 if ($fileData->{modificationType} eq "additionWithHistory") { 228 if ($fileData->{modificationType} eq "additionWithHistory") {
229 manufacturePatchForAdditionWithHistory($fileData); 229 manufacturePatchForAdditionWithHistory($fileData);
230 } 230 }
231 231
232 my $diffOptions = diffOptionsForFile($file); 232 my $diffOptions = diffOptionsForFile($file);
233 my $escapedFile = escapeSubversionPath($file); 233 my $escapedFile = escapeSubversionPath($file);
234 open DIFF, "svn diff --diff-cmd diff -x -$diffOptions '$escapedFile' |" or d ie; 234 open DIFF, "svn diff --diff-cmd diff -x -$diffOptions '$escapedFile' |" or d ie;
235 while (<DIFF>) { 235 while (<DIFF>) {
236 $patch .= $_; 236 $patch .= $_;
237 } 237 }
238 close DIFF; 238 close DIFF;
239 if (basename($file) eq "ChangeLog") { 239 if (basename($file) eq "ChangeLog") {
240 my $changeLogHash = fixChangeLogPatch($patch); 240 my $changeLogHash = fixChangeLogPatch($patch);
241 $patch = $changeLogHash->{patch}; 241 $patch = $changeLogHash->{patch};
242 } 242 }
243 print $patch; 243 print $patch;
244 if ($fileData->{isBinary}) { 244 if ($fileData->{isBinary}) {
245 print "\n" if ($patch && $patch =~ m/\n\S+$/m); 245 print "\n" if ($patch && $patch =~ m/\n\S+$/m);
246 outputBinaryContent($file); 246 outputBinaryContent($file);
247 } 247 }
248 return length($patch); 248 return length($patch);
249 } 249 }
250 250
251 sub generateFileList($\%) 251 sub generateFileList($\%)
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 my ($aa, $bb) = @_; 329 my ($aa, $bb) = @_;
330 330
331 my @a = split /(\d+)/, $aa; 331 my @a = split /(\d+)/, $aa;
332 my @b = split /(\d+)/, $bb; 332 my @b = split /(\d+)/, $bb;
333 333
334 # Compare one chunk at a time. 334 # Compare one chunk at a time.
335 # Each chunk is either all numeric digits, or all not numeric digits. 335 # Each chunk is either all numeric digits, or all not numeric digits.
336 while (@a && @b) { 336 while (@a && @b) {
337 my $a = shift @a; 337 my $a = shift @a;
338 my $b = shift @b; 338 my $b = shift @b;
339 339
340 # Use numeric comparison if chunks are non-equal numbers. 340 # Use numeric comparison if chunks are non-equal numbers.
341 return $a <=> $b if $a =~ /^\d/ && $b =~ /^\d/ && $a != $b; 341 return $a <=> $b if $a =~ /^\d/ && $b =~ /^\d/ && $a != $b;
342 342
343 # Use string comparison if chunks are any other kind of non-equal string . 343 # Use string comparison if chunks are any other kind of non-equal string .
344 return $a cmp $b if $a ne $b; 344 return $a cmp $b if $a ne $b;
345 } 345 }
346 346
347 # One of the two is now empty; compare lengths for result in this case. 347 # One of the two is now empty; compare lengths for result in this case.
348 return @a <=> @b; 348 return @a <=> @b;
349 } 349 }
350 350
351 sub outputBinaryContent($) 351 sub outputBinaryContent($)
352 { 352 {
353 my ($path) = @_; 353 my ($path) = @_;
354 # Deletion 354 # Deletion
355 return if (! -e $path); 355 return if (! -e $path);
356 # Addition or Modification 356 # Addition or Modification
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
428 return ($dirname, basename($path)); 428 return ($dirname, basename($path));
429 } 429 }
430 430
431 # Sort so source code files appear before test files. 431 # Sort so source code files appear before test files.
432 sub testfilecmp($$) 432 sub testfilecmp($$)
433 { 433 {
434 my ($fileDataA, $fileDataB) = @_; 434 my ($fileDataA, $fileDataB) = @_;
435 return $fileDataA->{isTestFile} <=> $fileDataB->{isTestFile}; 435 return $fileDataA->{isTestFile} <=> $fileDataB->{isTestFile};
436 } 436 }
437 437
OLDNEW
« no previous file with comments | « Tools/Scripts/svn-apply ('k') | Tools/Scripts/svn-unapply » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698