[webkit-changes] [WebKit/WebKit] a5dadd: Deploy LayoutDisallowedScope in LayoutPhase::InRen...
Ryosuke Niwa
noreply at github.com
Sat May 13 13:42:44 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a5dadd583b2468fa821d3d5d9c7d37ed247fdca8
https://github.com/WebKit/WebKit/commit/a5dadd583b2468fa821d3d5d9c7d37ed247fdca8
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2023-05-13 (Sat, 13 May 2023)
Changed paths:
M Source/WebCore/page/LocalFrameViewLayoutContext.cpp
M Source/WebCore/rendering/LayoutDisallowedScope.cpp
M Source/WebCore/rendering/LayoutDisallowedScope.h
M Source/WebCore/svg/graphics/SVGImage.cpp
Log Message:
-----------
Deploy LayoutDisallowedScope in LayoutPhase::InRenderTreeLayout
https://bugs.webkit.org/show_bug.cgi?id=256661
Reviewed by Simon Fraser.
Deploy LayoutDisallowedScope in LayoutPhase::InRenderTreeLayout
and make the class prevent the layout in release builds as well.
Also introduce LayoutDisallowedScope::AllowedScope and deploy this
in SVGImage::drawForContainer as this code can trigger synchronous
layout in a SVG image.
* Source/WebCore/page/LocalFrameViewLayoutContext.cpp:
(WebCore::LocalFrameViewLayoutContext::performLayout):
* Source/WebCore/rendering/LayoutDisallowedScope.cpp:
* Source/WebCore/rendering/LayoutDisallowedScope.h:
(WebCore::LayoutDisallowedScope::isLayoutAllowed):
(WebCore::LayoutDisallowedScope::LayoutDisallowedScope):
(WebCore::LayoutDisallowedScope::~LayoutDisallowedScope):
(WebCore::LayoutDisallowedScope::AllowedScope): Added.
(WebCore::LayoutDisallowedScope::AllowedScope::AllowedScope):
(WebCore::LayoutDisallowedScope::AllowedScope::~AllowedScope):
* Source/WebCore/rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):
* Source/WebCore/svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::drawForContainer):
(WebCore::SVGImage::draw):
Canonical link: https://commits.webkit.org/264051@main
More information about the webkit-changes
mailing list