[webkit-changes] [WebKit/WebKit] 452967: IPC::Connection::SyncMessageState does not support...
Kimmo Kinnunen
noreply at github.com
Mon Oct 10 02:18:07 PDT 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 452967ca049787c69ec6cd0fd05ff1d138ee8c65
https://github.com/WebKit/WebKit/commit/452967ca049787c69ec6cd0fd05ff1d138ee8c65
Author: Kimmo Kinnunen <kkinnunen at apple.com>
Date: 2022-10-10 (Mon, 10 Oct 2022)
Changed paths:
M Source/WebKit/Platform/IPC/Connection.cpp
M Source/WebKit/Platform/IPC/Connection.h
M Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm
M Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp
M Source/WebKit/Platform/IPC/win/ConnectionWin.cpp
Log Message:
-----------
IPC::Connection::SyncMessageState does not support multiple runloops
https://bugs.webkit.org/show_bug.cgi?id=245475
Reviewed by Chris Dumez.
Add per-run loop SyncMessageState to IPC::Connection. However,
hard-code it using RunLoop::main() for all connections.
There is no functional difference.
This preparatory change for running Connections in arbitrary
run loops. This feature is needed for IPC from Workers.
* Source/WTF/wtf/RunLoop.h:
(WTF::WTF_ASSERTS_ACQUIRED_CAPABILITY):
* Source/WebKit/Platform/IPC/Connection.cpp:
(IPC::Connection::SyncMessageState::SyncMessageState):
(IPC::Connection::SyncMessageState::WTF_GUARDED_BY_LOCK):
(IPC::Connection::SyncMessageState::get):
(IPC::Connection::SyncMessageState::release):
(IPC::Connection::SyncMessageState::enqueueMatchingMessages):
(IPC::Connection::SyncMessageState::processIncomingMessage):
(IPC::Connection::SyncMessageState::dispatchMessages):
(IPC::Connection::SyncMessageState::dispatchMessagesAndResetDidScheduleDispatchMessagesForConnection):
(IPC::Connection::enqueueMatchingMessagesToMessageReceiveQueue):
(IPC::Connection::open):
(IPC::Connection::platformPrepareForOpen):
(IPC::Connection::invalidate):
(IPC::Connection::waitForMessage):
(IPC::Connection::waitForSyncReply):
(IPC::Connection::processIncomingSyncReply):
(IPC::Connection::processIncomingMessage):
(IPC::Connection::connectionDidClose):
(IPC::Connection::dispatchSyncMessage):
(IPC::Connection::dispatchDidReceiveInvalidMessage):
(IPC::Connection::SyncMessageState::singleton): Deleted.
* Source/WebKit/Platform/IPC/Connection.h:
* Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm:
(IPC::Connection::platformOpen):
(IPC::Connection::open): Deleted.
* Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::platformPrepareForOpen):
(IPC::Connection::platformOpen):
(IPC::Connection::open): Deleted.
* Source/WebKit/Platform/IPC/win/ConnectionWin.cpp:
(IPC::Connection::platformOpen):
(IPC::Connection::open): Deleted.
Canonical link: https://commits.webkit.org/255334@main
More information about the webkit-changes
mailing list