diff options
| author | Steve Block <steveblock@google.com> | 2011-05-25 19:08:45 +0100 |
|---|---|---|
| committer | Steve Block <steveblock@google.com> | 2011-06-08 13:51:31 +0100 |
| commit | 2bde8e466a4451c7319e3a072d118917957d6554 (patch) | |
| tree | 28f4a1b869a513e565c7760d0e6a06e7cf1fe95a /Tools/Scripts/show-pretty-diff | |
| parent | 6939c99b71d9372d14a0c74a772108052e8c48c8 (diff) | |
| download | external_webkit-2bde8e466a4451c7319e3a072d118917957d6554.zip external_webkit-2bde8e466a4451c7319e3a072d118917957d6554.tar.gz external_webkit-2bde8e466a4451c7319e3a072d118917957d6554.tar.bz2 | |
Merge WebKit at r82507: Initial merge by git
Change-Id: I60ce9d780725b58b45e54165733a8ffee23b683e
Diffstat (limited to 'Tools/Scripts/show-pretty-diff')
| -rwxr-xr-x | Tools/Scripts/show-pretty-diff | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/Tools/Scripts/show-pretty-diff b/Tools/Scripts/show-pretty-diff new file mode 100755 index 0000000..2a17d3f --- /dev/null +++ b/Tools/Scripts/show-pretty-diff @@ -0,0 +1,77 @@ +#!/usr/bin/perl -w + +# Copyright (C) 2011 Apple Inc. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +# THE POSSIBILITY OF SUCH DAMAGE. + +use strict; +use FindBin; +use File::Temp qw(tempfile); +use lib $FindBin::Bin; +use webkitdirs; + +my $inputPath = ""; +if ($ARGV[0]) { + $inputPath = $ARGV[0] +} else { + # Create a temporary file for STDIN. + # FIXME: We can probably avoid putting this on the disk by directly piping + # to prettify.rb via IPC::Open2. + my $inputTempFileHandle; + ($inputTempFileHandle, $inputPath) = tempfile( + "inputtemp-XXXXXXXX", + DIR => File::Spec->tmpdir(), + SUFFIX => ".diff", + UNLINK => 0, + ); + + while (<STDIN>) { + print $inputTempFileHandle $_; + } + + close($inputTempFileHandle); +} + +# Create a temporary file for prettified patch. +my ($prettydiffFileHandle, $prettydiffPath) = tempfile( + "prettydiff-XXXXXXXX", + DIR => File::Spec->tmpdir(), + SUFFIX => ".html", + UNLINK => 0, +); +close($prettydiffFileHandle); + +my $prettyPatchDir = sourceDir() . "/Websites/bugs.webkit.org/PrettyPatch/"; +my $prettyPatchTool = sourceDir() . "/Websites/bugs.webkit.org/PrettyPatch/prettify.rb"; + +my $pathToPrettify = "ruby -I " . sourceDir() . "/Websites/bugs.webkit.org/PrettyPatch/ " . sourceDir() . "/Websites/bugs.webkit.org/PrettyPatch/prettify.rb"; +system "$pathToPrettify $inputPath > $prettydiffPath"; + +if (isAppleMacWebKit()) { + system "open", $prettydiffPath; +} elsif (isCygwin()) { + system "cygstart",$prettydiffPath; +} elsif (isWindows()) { + system "start", $prettydiffPath; +} else { + print "Created prettified diff at " . $prettydiffPath . "."; +} |
