[webkit-changes] [WebKit/WebKit] adf5c8: All "new" platforms should keep shortcutting the c...

Abrar Rahman Protyasha noreply at github.com
Wed Jan 17 23:36:26 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: adf5c8e2a88f0976b12c107ba40e79fa44ef370f
      https://github.com/WebKit/WebKit/commit/adf5c8e2a88f0976b12c107ba40e79fa44ef370f
  Author: Abrar Rahman Protyasha <a_protyasha at apple.com>
  Date:   2024-01-17 (Wed, 17 Jan 2024)

  Changed paths:
    M Source/WTF/wtf/PlatformHave.h
    M Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm

  Log Message:
  -----------
  All "new" platforms should keep shortcutting the class checks in shouldEnableStrictMode after 273108 at main
https://bugs.webkit.org/show_bug.cgi?id=267665
rdar://121155736

Reviewed by Alex Christensen.

There was a subtle behavior change in 273108 at main, following which some
platforms (namely watchOS 10, tvOS 17, and macCatalyst 17) started
performing the long list of (unnecessary) class checks. These platforms
were previously shortcutting said checks, so we should bring that
behavior back.

This patch fixes the issue by:

1. Defining HAVE(PKPAYMENTPASS) for all platforms bar tvOS, following
   the platform availability information for PKPaymentPass as documented
   in https://developer.apple.com/documentation/passkit/pkpaymentpass.
2. Amending the HAVE(STRICT_DECODABLE_PKPAYMENTPASS) condition to also
   include watchOS 10+ and macCatalyst 17+, since PKPaymentPass is
   available on said platforms.
3. Augmenting the class check shortcut logic to consider whether a
   platform has PKPaymentPass at all, if we fail the check for
   HAVE(STRICT_DECODABLE_PKPAYMENTPASS). This lets us maintain the
   shortcutting behavior for tvOS.

* Source/WTF/wtf/PlatformHave.h:
* Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm:
(IPC::shouldEnableStrictMode):

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




More information about the webkit-changes mailing list