[webkit-changes] [WebKit/WebKit] 58b5d6: CoreIPC should be explicit about which methods can...

Gavin noreply at github.com
Thu Dec 1 03:25:53 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 58b5d6c6019cbd67896c50af8ae6b6ea94165f1d
      https://github.com/WebKit/WebKit/commit/58b5d6c6019cbd67896c50af8ae6b6ea94165f1d
  Author: Gavin Phillips <gavin.p at apple.com>
  Date:   2022-12-01 (Thu, 01 Dec 2022)

  Changed paths:
    M LayoutTests/ipc/pasteboard-write-custom-data.html
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in
    M Source/WebKit/GPUProcess/GPUProcess.messages.in
    M Source/WebKit/GPUProcess/media/RemoteVideoFrameObjectHeap.messages.in
    M Source/WebKit/NetworkProcess/NetworkProcess.messages.in
    M Source/WebKit/Platform/IPC/Connection.cpp
    M Source/WebKit/Platform/IPC/Decoder.cpp
    M Source/WebKit/Platform/IPC/Decoder.h
    M Source/WebKit/Platform/IPC/Encoder.cpp
    M Source/WebKit/Platform/IPC/Encoder.h
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Scripts/webkit/model.py
    M Source/WebKit/Scripts/webkit/tests/MessageNames.cpp
    M Source/WebKit/Scripts/webkit/tests/MessageNames.h
    M Source/WebKit/UIProcess/WebPageProxy.messages.in
    M Source/WebKit/UIProcess/WebProcessProxy.messages.in
    M Source/WebKit/WebProcess/WebPage/WebPage.messages.in

  Log Message:
  -----------
  CoreIPC should be explicit about which methods can be called when WaitingForSyncReply

https://bugs.webkit.org/show_bug.cgi?id=247673
rdar://102134965

Reviewed by Alex Christensen.

CoreIPC should be explicit about which methods can be called when
WaitingForSyncReply. This change adds a new message attribute,
AllowedWhenWaitingForSyncReply, which specifies a message should be allowed.
Any messages which don't have this attribute will be queued as normal.

* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in:
* Source/WebKit/GPUProcess/GPUProcess.messages.in:
* Source/WebKit/GPUProcess/media/RemoteVideoFrameObjectHeap.messages.in:
* Source/WebKit/NetworkProcess/NetworkProcess.messages.in:
* Source/WebKit/Platform/IPC/Connection.cpp:
(IPC::Connection::SyncMessageState::processIncomingMessage):
(IPC::Connection::dispatchSyncMessage):
* Source/WebKit/Platform/IPC/Decoder.h:
(IPC::Decoder::isAllowedWhenWaitingForSyncReply const):
(IPC::Decoder::isAllowedWhenWaitingForUnboundedSyncReply const):
(IPC::Decoder::setIsAllowedWhenWaitingForSyncReplyOverride):
* Source/WebKit/Scripts/webkit/messages.py:
(generate_message_names_header):
(generate_message_names_implementation):
* Source/WebKit/Scripts/webkit/model.py:
* Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.cpp:
(IPC::ArgumentCoder<Namespace::Subnamespace::StructName>::decode):
(IPC::ArgumentCoder<Namespace::OtherClass>::decode):
(IPC::ArgumentCoder<Namespace::ReturnRefClass>::decode):
(IPC::ArgumentCoder<WebCore::InheritsFrom>::decode):
(IPC::ArgumentCoder<WebCore::InheritanceGrandchild>::decode):
* Source/WebKit/Scripts/webkit/tests/MessageNames.cpp:
(IPC::messageAllowedWhenWaitingForSyncReply):
(IPC::messageAllowedWhenWaitingForSyncReplyDueToSynchronousAttribute):
(IPC::messageAllowedWhenWaitingForSyncReplyDueToStreamAttribute):
(IPC::messageAllowedWhenWaitingForUnboundedSyncReply):
* Source/WebKit/Scripts/webkit/tests/MessageNames.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/UIProcess/WebProcessProxy.messages.in:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:

Canonical link: https://commits.webkit.org/257229@main




More information about the webkit-changes mailing list