Title: [114569] trunk/Source/WebCore
- Revision
- 114569
- Author
- [email protected]
- Date
- 2012-04-18 15:29:02 -0700 (Wed, 18 Apr 2012)
Log Message
Win8 builds usually fail due to cygwin rebasing
https://bugs.webkit.org/show_bug.cgi?id=84274
Reviewed by Dirk Pranke.
Cygwin can fail to spawn children if the DLL is rebased. This happens
frequently enough on Windows 8 that we should retry on failure.
No new tests. No behavior changed.
* bindings/scripts/preprocessor.pm:
(applyPreprocessor):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (114568 => 114569)
--- trunk/Source/WebCore/ChangeLog 2012-04-18 22:03:44 UTC (rev 114568)
+++ trunk/Source/WebCore/ChangeLog 2012-04-18 22:29:02 UTC (rev 114569)
@@ -1,3 +1,18 @@
+2012-04-18 Justin Schuh <[email protected]>
+
+ Win8 builds usually fail due to cygwin rebasing
+ https://bugs.webkit.org/show_bug.cgi?id=84274
+
+ Reviewed by Dirk Pranke.
+
+ Cygwin can fail to spawn children if the DLL is rebased. This happens
+ frequently enough on Windows 8 that we should retry on failure.
+
+ No new tests. No behavior changed.
+
+ * bindings/scripts/preprocessor.pm:
+ (applyPreprocessor):
+
2012-04-18 Levi Weintraub <[email protected]>
Add explicit template instantiation to chromium/PopupListBox.cpp to prepare for sub-pixel layout
Modified: trunk/Source/WebCore/bindings/scripts/preprocessor.pm (114568 => 114569)
--- trunk/Source/WebCore/bindings/scripts/preprocessor.pm 2012-04-18 22:03:44 UTC (rev 114568)
+++ trunk/Source/WebCore/bindings/scripts/preprocessor.pm 2012-04-18 22:29:02 UTC (rev 114569)
@@ -21,6 +21,7 @@
use strict;
use warnings;
+use Config;
use IPC::Open2;
BEGIN {
@@ -60,7 +61,20 @@
my @macros = grep { $_ } split(/\s+/, $defines); # grep skips empty macros.
@macros = map { "-D$_" } @macros;
- my $pid = open2(\*PP_OUT, \*PP_IN, split(' ', $preprocessor), @args, @macros, $fileName);
+ my $pid = 0;
+ if ($Config{osname} eq "cygwin") {
+ # This call can fail if Windows rebases cygwin, so retry a few times until it succeeds.
+ for (my $tries = 0; !$pid && ($tries < 20); $tries++) {
+ eval {
+ $pid = open2(\*PP_OUT, \*PP_IN, split(' ', $preprocessor), @args, @macros, $fileName);
+ 1;
+ } or do {
+ sleep 1;
+ }
+ };
+ } else {
+ $pid = open2(\*PP_OUT, \*PP_IN, split(' ', $preprocessor), @args, @macros, $fileName);
+ }
close PP_IN;
my @documentContent = <PP_OUT>;
close PP_OUT;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes