Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 202993f5a8458d12bad8101a293600569788b011
https://github.com/WebKit/WebKit/commit/202993f5a8458d12bad8101a293600569788b011
Author: David Kilzer <[email protected]>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M Source/WTF/wtf/PlatformHave.h
M Source/WebCore/platform/graphics/avfoundation/MediaPlaybackTargetCocoa.mm
Log Message:
-----------
Build fix: REGRESSION (317433@main): Build failure:
AVOutputDeviceTypeCustomProtocol is only available on macOS 27.0 or newer
<https://bugs.webkit.org/show_bug.cgi?id=319732>
<rdar://182570316>
Unreviewed build fix.
The AVRouting SDK declares the `AVOutputDeviceType` enumerator
`AVOutputDeviceTypeCustomProtocol` only as of the macOS 27.0 / iOS 27.0
SDK; earlier SDKs do not declare it at all. Suppressing
`-Wunguarded-availability-new` with `ALLOW_NEW_API_WITHOUT_GUARDS`
addressed only the SDKs that already declare the enumerator; against an
SDK that predates it, the reference fails to compile outright with "use
of undeclared identifier".
Gate the reference on a new `HAVE(AVOUTPUTDEVICE_CUSTOM_PROTOCOL)`
keyed on a 27.0 deployment target. Since the SDK is never older than
the deployment target, a 27.0 target guarantees the enumerator is
present, which also makes the availability suppression unnecessary. On
earlier targets no output device can report the custom-protocol type,
so `supportsCustomProtocolVideoPlayback()` correctly returns false.
No new tests since this change is not directly testable.
* Source/WTF/wtf/PlatformHave.h:
* Source/WebCore/platform/graphics/avfoundation/MediaPlaybackTargetCocoa.mm:
(WebCore::MediaPlaybackTargetCocoa::supportsCustomProtocolVideoPlayback const):
Canonical link: https://commits.webkit.org/317453@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications