Title: [100413] trunk
Revision
100413
Author
ser...@webkit.org
Date
2011-11-15 23:24:21 -0800 (Tue, 15 Nov 2011)

Log Message

[WK2] [GTK] fast/css/webkit-mask-crash-fieldset-legend.html asserts WebKitWebProcess
https://bugs.webkit.org/show_bug.cgi?id=69510

Reviewed by Simon Fraser.

Source/WebCore:

End the current transparency layer before early returning from
paintMask() when there is a maskBoxImage which is still being
loaded. This will balance the previous call to
beginTransparencyLayer().

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paintMask):

LayoutTests:

Unskipped tests that are now passing.

* platform/gtk/Skipped:
* platform/gtk-wk2/Skipped:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (100412 => 100413)


--- trunk/LayoutTests/ChangeLog	2011-11-16 07:23:17 UTC (rev 100412)
+++ trunk/LayoutTests/ChangeLog	2011-11-16 07:24:21 UTC (rev 100413)
@@ -1,3 +1,15 @@
+2011-11-15  Sergio Villar Senin  <svil...@igalia.com>
+
+        [WK2] [GTK] fast/css/webkit-mask-crash-fieldset-legend.html asserts WebKitWebProcess
+        https://bugs.webkit.org/show_bug.cgi?id=69510
+
+        Reviewed by Simon Fraser.
+
+        Unskipped tests that are now passing.
+
+        * platform/gtk/Skipped:
+        * platform/gtk-wk2/Skipped:
+
 2011-11-15  James Robinson  <jam...@chromium.org>
 
         [chromium] Land specific expectations for compositing tests

Modified: trunk/LayoutTests/platform/gtk/Skipped (100412 => 100413)


--- trunk/LayoutTests/platform/gtk/Skipped	2011-11-16 07:23:17 UTC (rev 100412)
+++ trunk/LayoutTests/platform/gtk/Skipped	2011-11-16 07:24:21 UTC (rev 100413)
@@ -155,10 +155,6 @@
 # https://bugs.webkit.org/show_bug.cgi?id=69001
 plugins/js-from-destroy.html
 
-# https://bugs.webkit.org/show_bug.cgi?id=71454
-fast/css/webkit-mask-crash-fieldset-legend.html
-fast/css/webkit-mask-crash-table.html
-
 # https://bugs.webkit.org/show_bug.cgi?id=72245
 fast/images/size-failure.html
 

Modified: trunk/LayoutTests/platform/gtk-wk2/Skipped (100412 => 100413)


--- trunk/LayoutTests/platform/gtk-wk2/Skipped	2011-11-16 07:23:17 UTC (rev 100412)
+++ trunk/LayoutTests/platform/gtk-wk2/Skipped	2011-11-16 07:24:21 UTC (rev 100413)
@@ -79,10 +79,6 @@
 # TESTS CRASHING
 ###############################################################################
 
-# [WK2] [GTK] fast/css/webkit-mask-crash-fieldset-legend.html asserts WebKitWebProcess
-# https://bugs.webkit.org/show_bug.cgi?id=69510
-fast/css/webkit-mask-crash-fieldset-legend.html
-
 # [WK2] [GTK] plugins/destroy-during-npp-new.html segfaults WebKitWebProcess
 # https://bugs.webkit.org/show_bug.cgi?id=69512
 plugins/destroy-during-npp-new.html

Modified: trunk/Source/WebCore/ChangeLog (100412 => 100413)


--- trunk/Source/WebCore/ChangeLog	2011-11-16 07:23:17 UTC (rev 100412)
+++ trunk/Source/WebCore/ChangeLog	2011-11-16 07:24:21 UTC (rev 100413)
@@ -1,3 +1,18 @@
+2011-11-15  Sergio Villar Senin  <svil...@igalia.com>
+
+        [WK2] [GTK] fast/css/webkit-mask-crash-fieldset-legend.html asserts WebKitWebProcess
+        https://bugs.webkit.org/show_bug.cgi?id=69510
+
+        Reviewed by Simon Fraser.
+
+        End the current transparency layer before early returning from
+        paintMask() when there is a maskBoxImage which is still being
+        loaded. This will balance the previous call to
+        beginTransparencyLayer().
+
+        * rendering/InlineFlowBox.cpp:
+        (WebCore::InlineFlowBox::paintMask):
+
 2011-11-15  Darin Adler  <da...@apple.com>
 
         Incorrect type checks in RenderTheme media code

Modified: trunk/Source/WebCore/rendering/InlineFlowBox.cpp (100412 => 100413)


--- trunk/Source/WebCore/rendering/InlineFlowBox.cpp	2011-11-16 07:23:17 UTC (rev 100412)
+++ trunk/Source/WebCore/rendering/InlineFlowBox.cpp	2011-11-16 07:24:21 UTC (rev 100413)
@@ -1281,8 +1281,11 @@
     paintFillLayers(paintInfo, Color(), renderer()->style()->maskLayers(), paintRect, compositeOp);
     
     bool hasBoxImage = maskBoxImage && maskBoxImage->canRender(renderer(), renderer()->style()->effectiveZoom());
-    if (!hasBoxImage || !maskBoxImage->isLoaded())
+    if (!hasBoxImage || !maskBoxImage->isLoaded()) {
+        if (pushTransparencyLayer)
+            paintInfo.context->endTransparencyLayer();
         return; // Don't paint anything while we wait for the image to load.
+    }
 
     // The simple case is where we are the only box for this object.  In those
     // cases only a single call to draw is required.
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to