Title: [178308] trunk/Source/WebCore
- Revision
- 178308
- Author
- commit-qu...@webkit.org
- Date
- 2015-01-12 16:35:24 -0800 (Mon, 12 Jan 2015)
Log Message
REGRESSION(r178029): [GTK][EFL] Caused no-backing-for-clip-overlap test failures
https://bugs.webkit.org/show_bug.cgi?id=140336
Patch by Byungseon Shin <sun.s...@lge.com> on 2015-01-12
Reviewed by Simon Fraser.
Avoid creating childClippingMaskLayer when renderer has not border radius nor clip path.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateChildClippingStrategy):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (178307 => 178308)
--- trunk/Source/WebCore/ChangeLog 2015-01-13 00:30:49 UTC (rev 178307)
+++ trunk/Source/WebCore/ChangeLog 2015-01-13 00:35:24 UTC (rev 178308)
@@ -1,3 +1,15 @@
+2015-01-12 Byungseon Shin <sun.s...@lge.com>
+
+ REGRESSION(r178029): [GTK][EFL] Caused no-backing-for-clip-overlap test failures
+ https://bugs.webkit.org/show_bug.cgi?id=140336
+
+ Reviewed by Simon Fraser.
+
+ Avoid creating childClippingMaskLayer when renderer has not border radius nor clip path.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateChildClippingStrategy):
+
2015-01-12 Myles C. Maxfield <mmaxfi...@apple.com>
[Apple] Squelch stderr log regarding negative stroke thickness
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (178307 => 178308)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2015-01-13 00:30:49 UTC (rev 178307)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2015-01-13 00:35:24 UTC (rev 178308)
@@ -1432,7 +1432,7 @@
void RenderLayerBacking::updateChildClippingStrategy(bool needsDescendentsClippingLayer)
{
if (hasClippingLayer() && needsDescendentsClippingLayer) {
- if (is<RenderBox>(renderer())) {
+ if (is<RenderBox>(renderer()) && (renderer().style().clipPath() || renderer().style().hasBorderRadius())) {
LayoutRect boxRect(LayoutPoint(), downcast<RenderBox>(renderer()).size());
FloatRoundedRect contentsClippingRect = renderer().style().getRoundedInnerBorderFor(boxRect).pixelSnappedRoundedRectForPainting(deviceScaleFactor());
contentsClippingRect.move(contentOffsetInCompostingLayer());
@@ -1441,13 +1441,13 @@
m_childClippingMaskLayer = nullptr;
return;
}
- }
- if (!m_childClippingMaskLayer) {
- m_childClippingMaskLayer = createGraphicsLayer("Child Clipping Mask Layer");
- m_childClippingMaskLayer->setDrawsContent(true);
- m_childClippingMaskLayer->setPaintingPhase(GraphicsLayerPaintChildClippingMask);
- clippingLayer()->setMaskLayer(m_childClippingMaskLayer.get());
+ if (!m_childClippingMaskLayer) {
+ m_childClippingMaskLayer = createGraphicsLayer("Child Clipping Mask Layer");
+ m_childClippingMaskLayer->setDrawsContent(true);
+ m_childClippingMaskLayer->setPaintingPhase(GraphicsLayerPaintChildClippingMask);
+ clippingLayer()->setMaskLayer(m_childClippingMaskLayer.get());
+ }
}
} else {
if (m_childClippingMaskLayer) {
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes