Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3fe3c3955914a08964b9c840e2750350e1e8b7af
https://github.com/WebKit/WebKit/commit/3fe3c3955914a08964b9c840e2750350e1e8b7af
Author: Luke Warlow <[email protected]>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
A Source/WebCore/bindings/js/JSTrustedTypePolicyCustom.cpp
A Source/WebCore/bindings/js/JSTrustedTypePolicyFactoryCustom.cpp
M Source/WebCore/dom/CreateHTMLCallback.h
M Source/WebCore/dom/CreateHTMLCallback.idl
M Source/WebCore/dom/CreateScriptCallback.h
M Source/WebCore/dom/CreateScriptCallback.idl
M Source/WebCore/dom/CreateScriptURLCallback.h
M Source/WebCore/dom/CreateScriptURLCallback.idl
M Source/WebCore/dom/TrustedTypePolicy.cpp
M Source/WebCore/dom/TrustedTypePolicy.h
M Source/WebCore/dom/TrustedTypePolicy.idl
M Source/WebCore/dom/TrustedTypePolicyFactory.cpp
M Source/WebCore/dom/TrustedTypePolicyFactory.h
M Source/WebCore/dom/TrustedTypePolicyFactory.idl
M Source/WebCore/dom/WindowOrWorkerGlobalScopeTrustedTypes.cpp
M Source/WebCore/workers/WorkerGlobalScope.cpp
Log Message:
-----------
Implement GC handling for trusted types API
https://bugs.webkit.org/show_bug.cgi?id=268419
Reviewed by Ryosuke Niwa.
This patch implements visitAdditionalChildren for TrustedTypePolicy calling
visitJSFunction on callbacks.
TrustedTypePolicy is also an opaque root which is added inside of
TrustedTypePolicyFactory visitAdditionalChildren.
It also marks TrustedTypePolicyFactory as being reachable via
scriptExecutionContext.
The trusted type callbacks are now weak callbacks.
The WorkerGlobalScopeTrustedTypes supplement is now also removed in
WorkerGlobalScope::prepareForDestruction,
this is so that teardown happens in the right order.
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/bindings/js/JSTrustedTypePolicyCustom.cpp: Added.
(WebCore::JSTrustedTypePolicy::visitAdditionalChildren):
* Source/WebCore/bindings/js/JSTrustedTypePolicyFactoryCustom.cpp: Added.
(WebCore::JSTrustedTypePolicyFactory::visitAdditionalChildren):
* Source/WebCore/dom/CreateHTMLCallback.h:
* Source/WebCore/dom/CreateHTMLCallback.idl:
* Source/WebCore/dom/CreateScriptCallback.h:
* Source/WebCore/dom/CreateScriptCallback.idl:
* Source/WebCore/dom/CreateScriptURLCallback.h:
* Source/WebCore/dom/CreateScriptURLCallback.idl:
* Source/WebCore/dom/TrustedTypePolicy.cpp:
(WebCore::TrustedTypePolicy::TrustedTypePolicy):
(WebCore::TrustedTypePolicy::getPolicyValue):
(WebCore::root):
* Source/WebCore/dom/TrustedTypePolicy.h:
(WebCore::TrustedTypePolicy::options const):
(WebCore::TrustedTypePolicy::WTF_RETURNS_LOCK):
* Source/WebCore/dom/TrustedTypePolicy.idl:
* Source/WebCore/dom/TrustedTypePolicyFactory.cpp:
(WebCore::TrustedTypePolicyFactory::create):
(WebCore::TrustedTypePolicyFactory::TrustedTypePolicyFactory):
* Source/WebCore/dom/TrustedTypePolicyFactory.h:
(WebCore::TrustedTypePolicyFactory::defaultPolicyConcurrently const):
* Source/WebCore/dom/TrustedTypePolicyFactory.idl:
* Source/WebCore/dom/WindowOrWorkerGlobalScopeTrustedTypes.cpp:
(WebCore::DOMWindowTrustedTypes::trustedTypes const):
(WebCore::WorkerGlobalScopeTrustedTypes::trustedTypes const):
* Source/WebCore/workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::prepareForDestruction):
Canonical link: https://commits.webkit.org/276974@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