[webkit-changes] [WebKit/WebKit] 3a9fba: REGRESSION(263286 at main): [ Debug ] ASSERTION FAILE...
Simon Fraser
noreply at github.com
Fri May 5 09:03:59 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3a9fba1a0f45a422ca23ce9f157a576e938925ed
https://github.com/WebKit/WebKit/commit/3a9fba1a0f45a422ca23ce9f157a576e938925ed
Author: Simon Fraser <simon.fraser at apple.com>
Date: 2023-05-05 (Fri, 05 May 2023)
Changed paths:
A LayoutTests/fast/layers/scroll-dimentions-dirty-assertion-expected.txt
A LayoutTests/fast/layers/scroll-dimentions-dirty-assertion.html
M Source/WebCore/rendering/RenderLayer.cpp
M Source/WebCore/rendering/RenderLayer.h
M Source/WebCore/rendering/RenderLayerCompositor.cpp
M Source/WebCore/rendering/RenderLayerCompositor.h
M Source/WebCore/rendering/RenderLayerScrollableArea.cpp
M Source/WebCore/rendering/RenderLayerScrollableArea.h
Log Message:
-----------
REGRESSION(263286 at main): [ Debug ] ASSERTION FAILED: !m_scrollDimensionsDirty
https://bugs.webkit.org/show_bug.cgi?id=256177
rdar://108753838
Reviewed by Alan Baradlay.
263286 at main made us call computeHasCompositedScrollableOverflow() in more cases; doing this from
`RenderLayer::styleChanged()` was already wrong, because layout is not up-to-date then, so asking
questions about overflow geometry is not valid.
Fix by passing LayoutUpToDate; if No, the only thing we can do is to consult the style to see
if it prevents overflow scrolling.
In order to not regress 225752 at main, we need to eagerly recompute layer.hasCompositedScrollableOverflow()
in RenderLayerCompositor::requiresCompositingForOverflowScrolling().
* LayoutTests/fast/layers/scroll-dimentions-dirty-assertion.html: Added.
* LayoutTests/fast/layers/scroll-dimentions-dirty-assertion-expected.txt: Added.
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayer.h:
* Source/WebCore/rendering/RenderLayerCompositor.h:
* Source/WebCore/rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::computeScrollDimensions):
(WebCore::RenderLayerScrollableArea::computeHasCompositedScrollableOverflow):
* Source/WebCore/rendering/RenderLayerScrollableArea.h:
Canonical link: https://commits.webkit.org/263722@main
More information about the webkit-changes
mailing list