[webkit-changes] [WebKit/WebKit] 285042: Use WeakPtr to store RenderSVGResourceContainer

Ryosuke Niwa noreply at github.com
Fri Jan 27 10:24:16 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 28504233c3512f3d3c163d4bf0ab5a59819317a6
      https://github.com/WebKit/WebKit/commit/28504233c3512f3d3c163d4bf0ab5a59819317a6
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2023-01-27 (Fri, 27 Jan 2023)

  Changed paths:
    M Source/WebCore/rendering/svg/LegacyRenderSVGRoot.cpp
    M Source/WebCore/rendering/svg/LegacyRenderSVGRoot.h
    M Source/WebCore/rendering/svg/RenderSVGRoot.cpp
    M Source/WebCore/rendering/svg/RenderSVGRoot.h
    M Source/WebCore/rendering/svg/SVGResources.cpp
    M Source/WebCore/rendering/svg/SVGResources.h
    M Source/WebCore/rendering/svg/SVGResourcesCache.cpp
    M Source/WebCore/rendering/svg/SVGResourcesCycleSolver.cpp
    M Source/WebCore/rendering/svg/SVGResourcesCycleSolver.h

  Log Message:
  -----------
  Use WeakPtr to store RenderSVGResourceContainer
https://bugs.webkit.org/show_bug.cgi?id=251077

Reviewed by Chris Dumez.

Replaced the use of raw pointers to RenderSVGResourceContainer by WeakPtr.

* Source/WebCore/rendering/svg/LegacyRenderSVGRoot.cpp:
(WebCore::LegacyRenderSVGRoot::layout):
(WebCore::LegacyRenderSVGRoot::addResourceForClientInvalidation):
* Source/WebCore/rendering/svg/LegacyRenderSVGRoot.h:
* Source/WebCore/rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::layoutChildren):
* Source/WebCore/rendering/svg/RenderSVGRoot.h:
* Source/WebCore/rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::removeClientFromCache const):
(WebCore::SVGResources::resourceDestroyed):
(WebCore::SVGResources::buildSetOfResources):
(WebCore::SVGResources::dump):
* Source/WebCore/rendering/svg/SVGResources.h:
(WebCore::SVGResources::clipper const):
(WebCore::SVGResources::markerStart const):
(WebCore::SVGResources::markerMid const):
(WebCore::SVGResources::markerEnd const):
(WebCore::SVGResources::masker const):
(WebCore::SVGResources::filter const):
(WebCore::SVGResources::fill const):
(WebCore::SVGResources::stroke const):
(WebCore::SVGResources::linkedResource const):
(): Deleted.
* Source/WebCore/rendering/svg/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::addResourcesFromRenderer):
(WebCore::SVGResourcesCache::removeResourcesFromRenderer):
* Source/WebCore/rendering/svg/SVGResourcesCycleSolver.cpp:
(WebCore::SVGResourcesCycleSolver::resourceContainsCycles const):
(WebCore::SVGResourcesCycleSolver::resolveCycles):
* Source/WebCore/rendering/svg/SVGResourcesCycleSolver.h:

Canonical link: https://commits.webkit.org/259498@main




More information about the webkit-changes mailing list