[webkit-changes] [WebKit/WebKit] 5c4f26: [visionOS] WebKit incorrectly disables some SDK-al...
aestes
noreply at github.com
Wed Oct 9 17:16:16 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5c4f26d0f5166c942f774fe09bbf5fe4043457f4
https://github.com/WebKit/WebKit/commit/5c4f26d0f5166c942f774fe09bbf5fe4043457f4
Author: Andy Estes <aestes at apple.com>
Date: 2024-10-09 (Wed, 09 Oct 2024)
Changed paths:
M Source/WTF/wtf/cocoa/RuntimeApplicationChecksCocoa.mm
M Source/WTF/wtf/spi/darwin/dyldSPI.h
Log Message:
-----------
[visionOS] WebKit incorrectly disables some SDK-aligned behaviors in apps linked against 2024-era SDKs
https://bugs.webkit.org/show_bug.cgi?id=281166
rdar://137627482
Reviewed by Sihui Liu.
Starting in 2023-era SDKs, dyld stopped defining dyld_spring_* version macros, instead using macros
formatted as dyld_<major-release-year>_SU_<minor-version>_os_versions (e.g.,
dyld_2022_SU_E_os_versions, representing releases aligned with macOS 13.3 and iOS 16.4). Since
dyld_spring_2023_os_versions and dyld_spring_2024_os_versions were not defined in dyld_priv.h,
WebKit would fall back to comparing dyld_get_program_sdk_version() to DYLD_IOS_VERSION_16_4 and
DYLD_IOS_VERSION_17_4 respectively on visionOS. Since visionOS SDK versions are not aligned with
iOS versions, linkedBefore() would incorrectly return true and cause us to incorrectly disable some
SDK-aligned behaviors in apps where they should have been enabled.
Resolved this by replacing dyld_spring_2023_os_versions and dyld_spring_2024_os_versions with
dyld_2022_SU_E_os_versions and dyld_2023_SU_E_os_versions respectively. Added a FIXME to address
the issue where we compare dyld_get_program_sdk_version() to unaligned iOS versions on watchOS and
visionOS in Public SDK builds.
* Source/WTF/wtf/cocoa/RuntimeApplicationChecksCocoa.mm:
(WTF::computeSDKAlignedBehaviors):
* Source/WTF/wtf/spi/darwin/dyldSPI.h:
Canonical link: https://commits.webkit.org/284936@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list