Title: [234329] trunk
- Revision
- 234329
- Author
- [email protected]
- Date
- 2018-07-27 15:11:32 -0700 (Fri, 27 Jul 2018)
Log Message
[WK1] ASSERTION FAILED: renderer().repaintLayoutRects().m_repaintRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint()) in WebCore::RenderLayer::updateLayerPositionsAfterScroll
https://bugs.webkit.org/show_bug.cgi?id=188122
<rdar://problem/42584790>
Reviewed by Simon Fraser.
Source/WebCore:
When ScrollView's m_paintsEntireContents flag flips due to layer backing changes, the repaint area transitions from
visual to layout overflow. When this happens the cached repaint rects become invalid and they need to be recomputed.
Currently there's no mechanism to trigger repaint cache invalidation from ScrollView.
Skip assertion for now on WK1 (see webkit.org/b/188121)
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositionsAfterScroll):
LayoutTests:
* platform/mac-wk1/TestExpectations:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (234328 => 234329)
--- trunk/LayoutTests/ChangeLog 2018-07-27 21:20:22 UTC (rev 234328)
+++ trunk/LayoutTests/ChangeLog 2018-07-27 22:11:32 UTC (rev 234329)
@@ -1,3 +1,13 @@
+2018-07-27 Zalan Bujtas <[email protected]>
+
+ [WK1] ASSERTION FAILED: renderer().repaintLayoutRects().m_repaintRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint()) in WebCore::RenderLayer::updateLayerPositionsAfterScroll
+ https://bugs.webkit.org/show_bug.cgi?id=188122
+ <rdar://problem/42584790>
+
+ Reviewed by Simon Fraser.
+
+ * platform/mac-wk1/TestExpectations:
+
2018-07-27 Michael Catanzaro <[email protected]>
Unreviewed GTK test gardening
Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (234328 => 234329)
--- trunk/LayoutTests/platform/mac-wk1/TestExpectations 2018-07-27 21:20:22 UTC (rev 234328)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations 2018-07-27 22:11:32 UTC (rev 234329)
@@ -586,43 +586,6 @@
webkit.org/b/187711 [ Debug ] svg/custom/linking-uri-01-b.svg [ Pass Failure ]
-# <rdar://problem/42584790>
-[ Mojave+ Debug ] fast/css/sticky/inflow-sticky.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/inline-sticky-abspos-child.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/inline-sticky.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/replaced-sticky.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-as-positioning-container.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-both-sides.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-left-percentage.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-left.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-margins.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-overflowing.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-side-margins.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-table-row-top.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-table-thead-top.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-top-margins.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-top.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-writing-mode-horizontal-bt.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-writing-mode-vertical-lr.html [ Skip ]
-[ Mojave+ Debug ] fast/css/sticky/sticky-writing-mode-vertical-rl.html [ Skip ]
-[ Mojave+ Debug ] fast/events/document-elementFromPoint.html [ Skip ]
-[ Mojave+ Debug ] fast/events/offsetX-offsetY.html [ Skip ]
-[ Mojave+ Debug ] fast/hidpi/hidpi-long-page-with-inset-element.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/absolute-position-changed.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/fixed-scale.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/fixed-table-cell.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/fixed-table-overflow-zindex.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/fixed-table-overflow.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/fixed.html [ Skip ]
-[ Mojave+ Debug ] fast/repaint/scroll-fixed-layer-with-reflection.html [ Skip ]
-[ Mojave+ Debug ] fast/scrolling/rtl-scrollbars-sticky-document-2.html [ Skip ]
-[ Mojave+ Debug ] fast/visual-viewport/client-coordinates-relative-to-layout-viewport.html [ Skip ]
-[ Mojave+ Debug ] fast/visual-viewport/zoomed-fixed-scroll-down-then-up.html [ Skip ]
-[ Mojave+ Debug ] fast/visual-viewport/zoomed-scroll-to-anchor-in-position-fixed.html [ Skip ]
-[ Mojave+ Debug ] fast/zooming/client-rect-in-fixed-zoomed.html [ Skip ]
-[ Mojave+ Debug ] transforms/2d/perspective-not-fixed-container.html [ Skip ]
-[ Mojave+ Debug ] transforms/2d/preserve3d-not-fixed-container.html [ Skip ]
-
# <rdar://problem/42625657>
[ Mojave+ ] fast/images/animated-gif-paint-after-animation.html [ Skip ]
[ Mojave+ ] fast/images/async-image-background-image-repeated.html [ Skip ]
Modified: trunk/Source/WebCore/ChangeLog (234328 => 234329)
--- trunk/Source/WebCore/ChangeLog 2018-07-27 21:20:22 UTC (rev 234328)
+++ trunk/Source/WebCore/ChangeLog 2018-07-27 22:11:32 UTC (rev 234329)
@@ -1,3 +1,19 @@
+2018-07-27 Zalan Bujtas <[email protected]>
+
+ [WK1] ASSERTION FAILED: renderer().repaintLayoutRects().m_repaintRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint()) in WebCore::RenderLayer::updateLayerPositionsAfterScroll
+ https://bugs.webkit.org/show_bug.cgi?id=188122
+ <rdar://problem/42584790>
+
+ Reviewed by Simon Fraser.
+
+ When ScrollView's m_paintsEntireContents flag flips due to layer backing changes, the repaint area transitions from
+ visual to layout overflow. When this happens the cached repaint rects become invalid and they need to be recomputed.
+ Currently there's no mechanism to trigger repaint cache invalidation from ScrollView.
+ Skip assertion for now on WK1 (see webkit.org/b/188121)
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
+
2018-07-27 Myles C. Maxfield <[email protected]>
[WIN] Crash when trying to access store pages
Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (234328 => 234329)
--- trunk/Source/WebCore/rendering/RenderLayer.cpp 2018-07-27 21:20:22 UTC (rev 234328)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp 2018-07-27 22:11:32 UTC (rev 234329)
@@ -881,7 +881,9 @@
clearRepaintRects();
else // FIXME: We could track the repaint container as we walk down the tree.
computeRepaintRects(renderer().containerForRepaint(), geometryMap);
- } else {
+ } else if (!renderer().view().frameView().platformWidget()) {
+ // When ScrollView's m_paintsEntireContents flag flips due to layer backing changes, the repaint area transitions from
+ // visual to layout overflow. When this happens the cached repaint rects become invalid and they need to be recomputed (see webkit.org/b/188121).
// Check that our cached rects are correct.
ASSERT(!renderer().hasRepaintLayoutRects() || renderer().repaintLayoutRects().m_repaintRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint()));
ASSERT(!renderer().hasRepaintLayoutRects() || renderer().repaintLayoutRects().m_outlineBox == renderer().outlineBoundsForRepaint(renderer().containerForRepaint()));
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes