WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
254306
REGRESSION(
261820@main
): ASSERTION FAILED: [source isKindOfClass:[DestinationClass class]]
https://bugs.webkit.org/show_bug.cgi?id=254306
Summary
REGRESSION(261820@main): ASSERTION FAILED: [source isKindOfClass:[Destination...
Robert Jenner
Reported
2023-03-22 18:55:36 PDT
TestWebKitAPI.WebKit.FormSubmission is hitting the following assertion on debug for iOS16 and Monterey+ ERROR: Error while launching com.apple.WebKit.Networking: Connection invalid /Volumes/Data/worker/Apple-iOS-16-Simulator-Debug-Build/build/Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm(226) : auto WebKit::ProcessLauncher::launchProcess()::(anonymous class)::operator()(xpc_object_t) const ASSERTION FAILED: [source isKindOfClass:[DestinationClass class]] /Volumes/Data/worker/Apple-iOS-16-Simulator-Debug-Build/build/Source/WebKit/Shared/Cocoa/WKObject.h(55) : DestinationClass *WebKit::checkedObjCCast(SourceClass *) [DestinationClass = NSString, SourceClass = id<WKObject>] 1 0x11bdfd439 WTFCrash 2 0x13c43b2cb WTFCrashWithInfo(int, char const*, char const*, int) 3 0x13d24b1ba NSString* WebKit::checkedObjCCast<NSString, objc_object<WKObject> >(id<WKObject>) 4 0x13d23a01d WebKit::WrapperTraits<API::String>::WrapperClass* WebKit::wrapper<API::String>(API::String&) 5 0x13d239b66 API::Object::toNSObject() 6 0x13d239538 API::Object::toNSObject() 7 0x13d74cfa5 -[WKWebView(WKPrivate) _setInputDelegate:]::FormClient::willSubmitForm(WebKit::WebPageProxy&, WebKit::WebFrameProxy&, WebKit::WebFrameProxy&, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, API::Object*, WTF::Function<void ()>&&) 8 0x13e183234 WebKit::WebPageProxy::willSubmitForm(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&) 9 0x13f088bd1 auto void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>&&)::'lambda'(auto&&...)::operator()<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>(auto&&...) const 10 0x13f088a1d decltype(static_cast<WebKit::WebPageProxy>(fp)(static_cast<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >>(fp0), static_cast<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >>(fp0), static_cast<WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>>(fp0), static_cast<WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>>(fp0), static_cast<WebKit::UserData>(fp0))) std::__1::__invoke_constexpr<void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>&&)::'lambda'(auto&&...), WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>(WebKit::WebPageProxy&&, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >&&, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >&&, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>&&, WebKit::UserData&&) 11 0x13f0889be decltype(auto) std::__1::__apply_tuple_impl<void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>&&)::'lambda'(auto&&...), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>, 0ul, 1ul, 2ul, 3ul, 4ul>(WebKit::WebPageProxy&&, WebKit::WebPageProxy&&, std::__1::__tuple_indices<0ul, 1ul, 2ul, 3ul, 4ul>) 12 0x13f088902 decltype(auto) std::__1::apply<void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>&&)::'lambda'(auto&&...), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData> >(WebKit::WebPageProxy&&, WebKit::WebPageProxy&&) 13 0x13f08776d void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&), std::__1::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData>&&) 14 0x13f034bc7 void IPC::handleMessage<Messages::WebPageProxy::WillSubmitForm, WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&)>(IPC::Connection&, IPC::Decoder&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Vector<std::__1::pair<WTF::String, WTF::String>, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&, WTF::ObjectIdentifier<WebKit::FormSubmitListenerIdentifierType>, WebKit::UserData const&)) 15 0x13f02a4ab WebKit::WebPageProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) 16 0x13f4a2fd3 IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&) 17 0x13df3c02c WebKit::AuxiliaryProcessProxy::dispatchMessage(IPC::Connection&, IPC::Decoder&) 18 0x13e2a5af9 WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) 19 0x13f47717c IPC::Connection::dispatchMessage(IPC::Decoder&) 20 0x13f477560 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >) 21 0x13f477cd4 IPC::Connection::dispatchIncomingMessages() 22 0x13f4943bd IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_16::operator()() const 23 0x13f494309 WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_16, void>::call() 24 0x11be2d7b2 WTF::Function<void ()>::operator()() const 25 0x11bed6aae WTF::RunLoop::performWork() 26 0x11bedc72e WTF::RunLoop::performWork(void*) 27 0x10e778ebd __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ 28 0x10e778dfc __CFRunLoopDoSource0 29 0x10e7785f9 __CFRunLoopDoSources0 30 0x10e772db3 __CFRunLoopRun 31 0x10e772637 CFRunLoopRunSpecific Child process terminated with signal 11: Segmentation fault HISTORY:
https://results.webkit.org/?suite=api-tests&test=TestWebKitAPI.WebKit.FormSubmission
It also appears to have a very clear cut regression point of
https://commits.webkit.org/261820@main
Attachments
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2023-03-22 18:56:09 PDT
<
rdar://problem/107112432
>
Alex Christensen
Comment 2
2023-03-22 21:12:10 PDT
Investigating...
Alex Christensen
Comment 3
2023-03-22 21:22:03 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/11849
EWS
Comment 4
2023-03-23 13:55:30 PDT
Committed
262034@main
(9758573dc911): <
https://commits.webkit.org/262034@main
> Reviewed commits have been landed. Closing PR #11849 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug