Skip to content

Commit

Permalink
Guard additional identifiers when generating messages
Browse files Browse the repository at this point in the history
https://bugs.webkit.org/show_bug.cgi?id=261768

Reviewed by Chris Dumez.

Message generation for `WebKit::RemoteAudioSessionIdentifier` and
`WebCore::PlaybackTargetClientContextIdentifier` were not properly
guarded. Add the appropriate conditions to their headers.

Tests were updated to reflect the changes.

* Source/WebKit/Scripts/webkit/messages.py:
(conditions_for_header):
* Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp:
(IPC::serializedIdentifiers):

Canonical link: https://commits.webkit.org/268165@main
  • Loading branch information
donny-dont committed Sep 20, 2023
1 parent f35c6c8 commit efca8e1
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 1 deletion.
4 changes: 3 additions & 1 deletion Source/WebKit/Scripts/webkit/messages.py
Original file line number Diff line number Diff line change
Expand Up @@ -438,8 +438,9 @@ def types_that_cannot_be_forward_declared():

def conditions_for_header(header):
conditions = {
'"InputMethodState.h"': ["PLATFORM(GTK)", "PLATFORM(WPE)"],
'"GestureTypes.h"': ["PLATFORM(IOS_FAMILY)"],
'"InputMethodState.h"': ["PLATFORM(GTK)", "PLATFORM(WPE)"],
'"RemoteAudioSessionIdentifier.h"': ["ENABLE(GPU_PROCESS) && USE(AUDIO_SESSION)"],
'"RemoteCDMIdentifier.h"': ["ENABLE(GPU_PROCESS) && ENABLE(ENCRYPTED_MEDIA)"],
'"RemoteCDMInstanceIdentifier.h"': ["ENABLE(GPU_PROCESS) && ENABLE(ENCRYPTED_MEDIA)"],
'"RemoteCDMInstanceSessionIdentifier.h"': ["ENABLE(GPU_PROCESS) && ENABLE(ENCRYPTED_MEDIA)"],
Expand All @@ -451,6 +452,7 @@ def conditions_for_header(header):
'<WebCore/CVUtilities.h>': ["PLATFORM(COCOA)", ],
'<WebCore/DataDetectorType.h>': ["ENABLE(DATA_DETECTION)"],
'<WebCore/MediaPlaybackTargetContext.h>': ["ENABLE(WIRELESS_PLAYBACK_TARGET)"],
'<WebCore/PlaybackTargetClientContextIdentifier.h>': ["ENABLE(WIRELESS_PLAYBACK_TARGET)"],
'<WebCore/VideoFrameCV.h>': ["PLATFORM(COCOA)", ],
}
if not header in conditions:
Expand Down
12 changes: 12 additions & 0 deletions Source/WebKit/Scripts/webkit/tests/MessageArgumentDescriptions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,9 @@
#include "QuotaIncreaseRequestIdentifier.h"
#include "RemoteAudioDestinationIdentifier.h"
#include "RemoteAudioHardwareListenerIdentifier.h"
#if ENABLE(GPU_PROCESS) && USE(AUDIO_SESSION)
#include "RemoteAudioSessionIdentifier.h"
#endif
#if ENABLE(GPU_PROCESS) && ENABLE(ENCRYPTED_MEDIA)
#include "RemoteCDMIdentifier.h"
#endif
Expand Down Expand Up @@ -104,7 +106,9 @@
#include <WebCore/MediaPlayerIdentifier.h>
#include <WebCore/MediaSessionIdentifier.h>
#include <WebCore/PageIdentifier.h>
#if ENABLE(WIRELESS_PLAYBACK_TARGET)
#include <WebCore/PlaybackTargetClientContextIdentifier.h>
#endif
#include <WebCore/PortIdentifier.h>
#include <WebCore/ProcessIdentifier.h>
#include <WebCore/PushSubscriptionIdentifier.h>
Expand Down Expand Up @@ -452,7 +456,9 @@ Vector<ASCIILiteral> serializedIdentifiers()
static_assert(sizeof(uint64_t) == sizeof(WebCore::MediaSessionIdentifier));
static_assert(sizeof(uint64_t) == sizeof(WebCore::OpaqueOriginIdentifier));
static_assert(sizeof(uint64_t) == sizeof(WebCore::PageIdentifier));
#if ENABLE(WIRELESS_PLAYBACK_TARGET)
static_assert(sizeof(uint64_t) == sizeof(WebCore::PlaybackTargetClientContextIdentifier));
#endif
static_assert(sizeof(uint64_t) == sizeof(WebCore::PortIdentifier));
static_assert(sizeof(uint64_t) == sizeof(WebCore::ProcessIdentifier));
static_assert(sizeof(uint64_t) == sizeof(WebCore::PushSubscriptionIdentifier));
Expand Down Expand Up @@ -492,7 +498,9 @@ Vector<ASCIILiteral> serializedIdentifiers()
static_assert(sizeof(uint64_t) == sizeof(WebKit::QuotaIncreaseRequestIdentifier));
static_assert(sizeof(uint64_t) == sizeof(WebKit::RemoteAudioDestinationIdentifier));
static_assert(sizeof(uint64_t) == sizeof(WebKit::RemoteAudioHardwareListenerIdentifier));
#if ENABLE(GPU_PROCESS) && USE(AUDIO_SESSION)
static_assert(sizeof(uint64_t) == sizeof(WebKit::RemoteAudioSessionIdentifier));
#endif
#if ENABLE(GPU_PROCESS) && ENABLE(ENCRYPTED_MEDIA)
static_assert(sizeof(uint64_t) == sizeof(WebKit::RemoteCDMIdentifier));
#endif
Expand Down Expand Up @@ -552,7 +560,9 @@ Vector<ASCIILiteral> serializedIdentifiers()
"WebCore::MediaSessionIdentifier"_s,
"WebCore::OpaqueOriginIdentifier"_s,
"WebCore::PageIdentifier"_s,
#if ENABLE(WIRELESS_PLAYBACK_TARGET)
"WebCore::PlaybackTargetClientContextIdentifier"_s,
#endif
"WebCore::PortIdentifier"_s,
"WebCore::ProcessIdentifier"_s,
"WebCore::PushSubscriptionIdentifier"_s,
Expand Down Expand Up @@ -592,7 +602,9 @@ Vector<ASCIILiteral> serializedIdentifiers()
"WebKit::QuotaIncreaseRequestIdentifier"_s,
"WebKit::RemoteAudioDestinationIdentifier"_s,
"WebKit::RemoteAudioHardwareListenerIdentifier"_s,
#if ENABLE(GPU_PROCESS) && USE(AUDIO_SESSION)
"WebKit::RemoteAudioSessionIdentifier"_s,
#endif
#if ENABLE(GPU_PROCESS) && ENABLE(ENCRYPTED_MEDIA)
"WebKit::RemoteCDMIdentifier"_s,
#endif
Expand Down

0 comments on commit efca8e1

Please sign in to comment.