Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9a66248c727caddb8d851630a22f0fa9e56442bc
https://github.com/WebKit/WebKit/commit/9a66248c727caddb8d851630a22f0fa9e56442bc
Author: Matt Woodrow <[email protected]>
Date: 2024-11-15 (Fri, 15 Nov 2024)
Changed paths:
A
LayoutTests/compositing/shared-backing/make-sharing-layer-composited-expected.txt
A LayoutTests/compositing/shared-backing/make-sharing-layer-composited.html
M Source/WebCore/rendering/RenderLayerBacking.cpp
Log Message:
-----------
LAYER_POSITIONS_ASSERT(m_repaintContainer == repaintContainer) on bbc.com
https://bugs.webkit.org/show_bug.cgi?id=282944
<rdar://139930342>
Reviewed by Dan Glastonbury.
RenderLayerBacking::setBackingSharingLayers calls `compositingStatusChanged` on
layers that no longer share to recompute their repaint rects, but we haven't yet
called `clearBackingSharingLayerProviders` to disconnect them.
This results in the repaint rects being computed with the sharing layer as the
repaint container still, and are invalid.
Next time recursiveUpdateLayerPositions runs in debug (without those invalid
layers being marked as dirty) it asserts on the invalid state.
This would also cause incorrect repaints being issued, if those happened while
in this invalid state.
*
LayoutTests/compositing/shared-backing/make-sharing-layer-composited-expected.txt:
Added.
* LayoutTests/compositing/shared-backing/make-sharing-layer-composited.html:
Added.
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::setBackingSharingLayers):
Canonical link: https://commits.webkit.org/286633@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes