Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 20a50d56ae71b374b35a4a30d8b26b6680c6146d
https://github.com/WebKit/WebKit/commit/20a50d56ae71b374b35a4a30d8b26b6680c6146d
Author: Alex Christensen <[email protected]>
Date: 2023-03-17 (Fri, 17 Mar 2023)
Changed paths:
M Source/WebKit/Shared/API/APIObject.h
M Source/WebKit/Shared/Cocoa/APIObject.mm
M Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp
M Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h
M Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.cpp
M Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.h
M Source/WebKit/UIProcess/API/Cocoa/WKProcessGroup.mm
M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
M Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h
M Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm
M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
M Source/WebKit/UIProcess/WebProcessPool.h
M Source/WebKit/UIProcess/ios/PageClientImplIOS.mm
M
Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegate.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegatePlugIn.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm
M Tools/TestWebKitAPI/WKWebViewConfigurationExtras.h
M Tools/TestWebKitAPI/WKWebViewConfigurationExtras.mm
Log Message:
-----------
Form submission metadata should be limited to arrays, dictionaries, strings,
data, and numbers
https://bugs.webkit.org/show_bug.cgi?id=253753
rdar://106585542
Reviewed by Chris Dumez.
Instead of encoding any object using NSSecureCoding then decoding it and
returning it to the API client,
restrict the NSObject types to NSString, NSData, NSNumber, NSArray, and
NSDictionary, which we convert
to API::Object for serialization, then convert back to those types on the other
side.
Also make FormClient.m_controller and FormClient.m_webView WeakObjCPtr smart
pointers instead of raw pointers.
Also deprecate _WKProcessPoolConfiguration.customClassesForParameterCoder
because it doesn't do anything any more.
* Source/WebKit/Shared/API/APIObject.h:
* Source/WebKit/Shared/Cocoa/APIObject.mm:
(API::Object::toNSObject):
(API::Object::fromNSObject):
* Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp:
(API::ProcessPoolConfiguration::copy):
* Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h:
* Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.cpp:
(WKContextConfigurationCopyCustomClassesForParameterCoder):
(WKContextConfigurationSetCustomClassesForParameterCoder):
* Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.h:
* Source/WebKit/UIProcess/API/Cocoa/WKProcessGroup.mm:
(-[WKProcessGroup
initWithInjectedBundleURL:andCustomClassesForParameterCoder:]):
(toStringVector): Deleted.
* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setInputDelegate:]):
* Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration customClassesForParameterCoder]):
(-[_WKProcessPoolConfiguration setCustomClassesForParameterCoder:]):
* Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitialize):
(WebKit::WebProcessPool::initializeClassesForParameterCoding): Deleted.
(WebKit::WebProcessPool::allowedClassesForParameterCoding const): Deleted.
* Source/WebKit/UIProcess/WebProcessPool.h:
* Source/WebKit/UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::elementDidFocus):
*
Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegate.mm:
(TEST):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegatePlugIn.mm:
(-[BundleFormDelegatePlugInWithUserInfo
webProcessPlugIn:didCreateBrowserContextController:]):
(-[BundleFormDelegatePlugInWithUserInfo
_webProcessPlugInBrowserContextController:willSubmitForm:toFrame:fromFrame:withValues:]):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
(TEST):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
(-[InputDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
(TEST):
* Tools/TestWebKitAPI/WKWebViewConfigurationExtras.h:
* Tools/TestWebKitAPI/WKWebViewConfigurationExtras.mm:
(+[WKWebViewConfiguration
_test_configurationWithTestPlugInClassName:configureJSCForTesting:]):
(+[WKWebViewConfiguration
_test_configurationWithTestPlugInClassName:configureJSCForTesting:andCustomParameterClasses:]):
Deleted.
Canonical link: https://commits.webkit.org/261820@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes