Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b88d5c1970f976abeb9fe6d74e0433a922613818
https://github.com/WebKit/WebKit/commit/b88d5c1970f976abeb9fe6d74e0433a922613818
Author: Youenn Fablet <[email protected]>
Date: 2024-06-03 (Mon, 03 Jun 2024)
Changed paths:
M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp
M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h
M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.messages.in
M Source/WebKit/Platform/IPC/Connection.h
M Source/WebKit/Platform/IPC/MessageSenderInlines.h
M Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.cpp
M Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.h
M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp
M Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.cpp
M Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h
M Tools/TestWebKitAPI/Tests/IPC/ConnectionTests.cpp
M Tools/TestWebKitAPI/Tests/IPC/MessageSenderTests.cpp
Log Message:
-----------
Allow to easily convert IPC NativePromises
https://bugs.webkit.org/show_bug.cgi?id=274957
rdar://129054558
Reviewed by Jean-Yves Avenard.
We sometimes use NativePromise in WebCore code and end up creating IPC
NativePromises.
But the types between the two may not always match, for instance due to the
handling of IPC::Error.
We used to use settle to adapt but it is more convenient to be able to convert
directly before resolving/rejecting the promise.
We use this in WebCacheStorageConnection that has Promises defined in
WebCore::CacheStorageConnection.
We use this for RemoteRealtimeMediaSourceProxy which has promises defined in
WebCore::RemoteRealtimeMediaSource.
We update NetworkStorageManager::cacheStorageClearMemoryRepresentation as it is
not returning any error.
We use a void completion handler instead.
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:
(WebKit::NetworkStorageManager::cacheStorageClearMemoryRepresentation):
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h:
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.messages.in:
* Source/WebKit/Platform/IPC/Connection.h:
(IPC::Connection::PromiseConverter::convertResult):
(IPC::Connection::PromiseConverter::convertError):
(IPC::Connection::sendWithPromisedReply):
(IPC::Connection::makeAsyncReplyHandlerWithDispatcher):
* Source/WebKit/Platform/IPC/MessageSenderInlines.h:
(IPC::MessageSender::sendWithPromisedReply):
* Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.cpp:
(WebKit::WebCacheStorageConnection::PromiseConverter::convertResult):
(WebKit::WebCacheStorageConnection::PromiseConverter::convertError):
(WebKit::WebCacheStorageConnection::open):
(WebKit::WebCacheStorageConnection::remove):
(WebKit::WebCacheStorageConnection::retrieveCaches):
(WebKit::WebCacheStorageConnection::retrieveRecords):
(WebKit::WebCacheStorageConnection::batchDeleteOperation):
(WebKit::WebCacheStorageConnection::batchPutOperation):
(WebKit::WebCacheStorageConnection::clearMemoryRepresentation):
(WebKit::WebCacheStorageConnection::engineRepresentation):
* Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.h:
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:
(WebKit::LibWebRTCCodecs::encodeFrameInternal):
(WebKit::LibWebRTCCodecs::flushEncoder):
* Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.cpp:
(WebKit::RemoteRealtimeMediaSourceProxy::PromiseConverter::convertResult):
(WebKit::RemoteRealtimeMediaSourceProxy::PromiseConverter::convertError):
(WebKit::RemoteRealtimeMediaSourceProxy::takePhoto):
(WebKit::RemoteRealtimeMediaSourceProxy::getPhotoCapabilities):
(WebKit::RemoteRealtimeMediaSourceProxy::getPhotoSettings):
* Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h:
* Tools/TestWebKitAPI/Tests/IPC/ConnectionTests.cpp:
(TestWebKitAPI::TEST_P):
* Tools/TestWebKitAPI/Tests/IPC/MessageSenderTests.cpp:
(TestWebKitAPI::TEST_P):
Canonical link: https://commits.webkit.org/279647@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