Title: [290285] trunk/Source/WebCore
Revision
290285
Author
[email protected]
Date
2022-02-21 19:57:42 -0800 (Mon, 21 Feb 2022)

Log Message

Ensure layer has backing during traversal
https://bugs.webkit.org/show_bug.cgi?id=236858

Patch by Brandon Stewart <[email protected]> on 2022-02-21
Reviewed by Simon Fraser.

Ensure the layer has a backing attached to it before trying to append
the node id.

* rendering/RenderLayerCompositor.cpp:
(WebCore::collectStationaryLayerRelatedOverflowNodes):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (290284 => 290285)


--- trunk/Source/WebCore/ChangeLog	2022-02-22 03:36:52 UTC (rev 290284)
+++ trunk/Source/WebCore/ChangeLog	2022-02-22 03:57:42 UTC (rev 290285)
@@ -1,3 +1,16 @@
+2022-02-21  Brandon Stewart  <[email protected]>
+
+        Ensure layer has backing during traversal
+        https://bugs.webkit.org/show_bug.cgi?id=236858
+
+        Reviewed by Simon Fraser.
+
+        Ensure the layer has a backing attached to it before trying to append
+        the node id.
+
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::collectStationaryLayerRelatedOverflowNodes):
+
 2022-02-21  Cameron McCormack  <[email protected]>
 
         Make input element UA shadow tree creation lazy

Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (290284 => 290285)


--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2022-02-22 03:36:52 UTC (rev 290284)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2022-02-22 03:57:42 UTC (rev 290285)
@@ -3442,7 +3442,7 @@
 static void collectStationaryLayerRelatedOverflowNodes(const RenderLayer& layer, const RenderLayer&, Vector<ScrollingNodeID>& scrollingNodes)
 {
     ASSERT(layer.isComposited());
-    
+
     auto appendOverflowLayerNodeID = [&scrollingNodes] (const RenderLayer& overflowLayer) {
         ASSERT(overflowLayer.isComposited());
         auto scrollingNodeID = overflowLayer.backing()->scrollingNodeIDForRole(ScrollCoordinationRole::Scrolling);
@@ -3459,6 +3459,9 @@
         if (isContainingBlockChain && isPaintOrderAncestor)
             return AncestorTraversal::Stop;
 
+        if (!ancestorLayer.isComposited())
+            return AncestorTraversal::Stop;
+
         if (seenPaintOrderAncestor && !isContainingBlockChain && ancestorLayer.hasCompositedScrollableOverflow())
             appendOverflowLayerNodeID(ancestorLayer);
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to