[webkit-changes] [WebKit/WebKit] 8ff9aa: Fix assertion in WebSWClientConnection::matchRegis...
Alex Christensen
noreply at github.com
Thu Sep 19 20:00:31 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8ff9aac9dafb83663ae8f82da58a742ce5d270ea
https://github.com/WebKit/WebKit/commit/8ff9aac9dafb83663ae8f82da58a742ce5d270ea
Author: Alex Christensen <achristensen at apple.com>
Date: 2024-09-19 (Thu, 19 Sep 2024)
Changed paths:
M Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp
Log Message:
-----------
Fix assertion in WebSWClientConnection::matchRegistration after network process crash
https://bugs.webkit.org/show_bug.cgi?id=280005
rdar://136310625
Reviewed by Youenn Fablet.
This fixes an assertion I saw on a bot with this stack trace:
ASSERTION FAILED: Completion handler should always be called
!m_function
.../WebKitBuild/Debug/usr/local/include/wtf/CompletionHandler.h(66) : WTF::CompletionHandler<void (std::optional<WebCore::ServiceWorkerRegistrationData> &&)>::~CompletionHandler()
1 WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>::~CompletionHandler()
2 WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>::~CompletionHandler()
3 WebKit::WebSWClientConnection::matchRegistration(WebCore::SecurityOriginData&&, WTF::URL const&, WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>&&)::$_10::~$_10()
4 WebKit::WebSWClientConnection::matchRegistration(WebCore::SecurityOriginData&&, WTF::URL const&, WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>&&)::$_10::~$_10()
5 WTF::Detail::CallableWrapper<WebKit::WebSWClientConnection::matchRegistration(WebCore::SecurityOriginData&&, WTF::URL const&, WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>&&)::$_10, void>::~CallableWrapper()
6 WTF::Detail::CallableWrapper<WebKit::WebSWClientConnection::matchRegistration(WebCore::SecurityOriginData&&, WTF::URL const&, WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>&&)::$_10, void>::~CallableWrapper()
7 WTF::Detail::CallableWrapper<WebKit::WebSWClientConnection::matchRegistration(WebCore::SecurityOriginData&&, WTF::URL const&, WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>&&)::$_10, void>::~CallableWrapper()
8 std::__1::default_delete<WTF::Detail::CallableWrapperBase<void>>::operator()[abi:sn170006](WTF::Detail::CallableWrapperBase<void>*) const
9 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void>>>::reset[abi:sn170006](WTF::Detail::CallableWrapperBase<void>*)
10 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void>>>::~unique_ptr[abi:sn170006]()
11 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void>>>::~unique_ptr[abi:sn170006]()
12 WTF::Function<void ()>::~Function()
13 WTF::Function<void ()>::~Function()
14 WTF::VectorDestructor<true, WTF::Function<void ()>>::destruct(WTF::Function<void ()>*, WTF::Function<void ()>*)
15 WTF::VectorTypeOperations<WTF::Function<void ()>>::destruct(WTF::Function<void ()>*, WTF::Function<void ()>*)
16 WTF::Deque<WTF::Function<void ()>, 0ul>::destroyAll()
17 WTF::Deque<WTF::Function<void ()>, 0ul>::~Deque()
18 WTF::Deque<WTF::Function<void ()>, 0ul>::~Deque()
19 WebKit::WebSWClientConnection::~WebSWClientConnection()
20 WebKit::WebSWClientConnection::~WebSWClientConnection()
21 WebKit::WebSWClientConnection::~WebSWClientConnection()
22 WTF::RefCounted<WebCore::SWClientConnection>::deref() const
23 WTF::DefaultRefDerefTraits<WebKit::WebSWClientConnection>::derefIfNotNull(WebKit::WebSWClientConnection*)
24 WTF::RefPtr<WebKit::WebSWClientConnection, WTF::RawPtrTraits<WebKit::WebSWClientConnection>, WTF::DefaultRefDerefTraits<WebKit::WebSWClientConnection>>::~RefPtr()
25 WTF::RefPtr<WebKit::WebSWClientConnection, WTF::RawPtrTraits<WebKit::WebSWClientConnection>, WTF::DefaultRefDerefTraits<WebKit::WebSWClientConnection>>::~RefPtr()
26 WebKit::NetworkProcessConnection::didClose(IPC::Connection&)
27 IPC::Connection::dispatchDidCloseAndInvalidate()::$_14::operator()() const
28 WTF::Detail::CallableWrapper<IPC::Connection::dispatchDidCloseAndInvalidate()::$_14, void>::call()
29 WTF::Function<void ()>::operator()() const
30 WTF::RunLoop::performWork()
31 WTF::RunLoop::performWork(void*)
* Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp:
(WebKit::WebSWClientConnection::matchRegistration):
Canonical link: https://commits.webkit.org/283969@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list