[webkit-changes] [WebKit/WebKit] 046928: Versioning.

Aditya Keerthi noreply at github.com
Tue May 14 12:26:04 PDT 2024


  Branch: refs/heads/safari-7618.2.12.10-branch
  Home:   https://github.com/WebKit/WebKit
  Commit: 046928bac9d7aa004a9af53164688e5550ae82ab
      https://github.com/WebKit/WebKit/commit/046928bac9d7aa004a9af53164688e5550ae82ab
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-15 (Mon, 15 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.1

Canonical link: https://commits.webkit.org/272448.932@safari-7618.2.12.10-branch


  Commit: 6ae709749b2c728199debc3960ca61643c11ea0e
      https://github.com/WebKit/WebKit/commit/6ae709749b2c728199debc3960ca61643c11ea0e
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2024-04-16 (Tue, 16 Apr 2024)

  Changed paths:
    M Source/WebKit/Platform/cocoa/XPCUtilities.h
    M Source/WebKit/Platform/cocoa/XPCUtilities.mm
    M Source/WebKit/Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm
    M Source/WebKit/Shared/Cocoa/XPCEndpoint.mm
    M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm

  Log Message:
  -----------
  Cherry-pick 3c2c899f692d. rdar://126479653

    WebKit process termination with xpc_connection_kill does not always work
    https://bugs.webkit.org/show_bug.cgi?id=272669
    rdar://126479653

    Reviewed by Chris Dumez.

    WebKit process termination with xpc_connection_kill does not always work. We are currently seeing flaky
    termination behavior on macOS, where the child processes are not always terminated successfully.
    Additionally, on iOS, the XPC connection has become anonymous due to migration to extensions for WebKit
    processes, and xpc_connection_kill does not support anonymous connections. This patch addresses this
    issue by creating and sending a XPC message to the child process to request termination. This has a
    high chance of success, since we know that the XPC connection termination watchdog is holding a
    background assertion on the process, so it is not suspended. Additionally, the XPC message is being
    handled on the XPC event handler thread, which is handling very few messages, so it is very unlikely
    that it is blocked and cannot handle the message. This gives the process a chance to exit cleanly and
    send a reply back. If the UI process does not receive the expected reply, it will try calling
    xpc_connection_kill.

    * Source/WebKit/Platform/cocoa/XPCUtilities.h:
    * Source/WebKit/Platform/cocoa/XPCUtilities.mm:
    (WebKit::terminateWithReason):
    (WebKit::handleXPCExitMessage):
    * Source/WebKit/Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
    (WebKit::AuthenticationManager::initializeConnection):
    * Source/WebKit/Shared/Cocoa/XPCEndpoint.mm:
    (WebKit::XPCEndpoint::XPCEndpoint):
    * Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
    (WebKit::XPCServiceEventHandler):

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


  Commit: 168c94dfb25f58854fa356cc2353fd0383d0cec7
      https://github.com/WebKit/WebKit/commit/168c94dfb25f58854fa356cc2353fd0383d0cec7
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2024-04-16 (Tue, 16 Apr 2024)

  Changed paths:
    M Source/WebKit/Shared/AuxiliaryProcess.h
    M Source/WebKit/Shared/AuxiliaryProcess.messages.in
    M Source/WebKit/Shared/Cocoa/AuxiliaryProcessCocoa.mm
    M Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp
    M Source/WebKit/UIProcess/AuxiliaryProcessProxy.h
    M Source/WebKit/UIProcess/Cocoa/AuxiliaryProcessProxyCocoa.mm

  Log Message:
  -----------
  Cherry-pick d6540a38e780. rdar://126492909

    Regression(277427 at main) Crash under AuxiliaryProcessProxy::notifyPreferencesChanged()
    https://bugs.webkit.org/show_bug.cgi?id=272695
    rdar://126492909

    Reviewed by Per Arne Vollan.

    We were using a HashMap to store preferences whose key was a std::pair<String, String>.
    The first String was the domain and the second the preference name. However, for global
    preferences, the domain is null, causing a crash when hashing the key.

    To address an issue, we now store global preferences in a separate HashMap.

    * Source/WebKit/Shared/AuxiliaryProcess.h:
    * Source/WebKit/Shared/AuxiliaryProcess.messages.in:
    * Source/WebKit/Shared/Cocoa/AuxiliaryProcessCocoa.mm:
    (WebKit::AuxiliaryProcess::preferencesDidUpdate):
    * Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:
    (WebKit::AuxiliaryProcessProxy::didChangeThrottleState):
    * Source/WebKit/UIProcess/AuxiliaryProcessProxy.h:
    * Source/WebKit/UIProcess/Cocoa/AuxiliaryProcessProxyCocoa.mm:
    (WebKit::AuxiliaryProcessProxy::notifyPreferencesChanged):

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


  Commit: a5376aab1bd33d7ed445439cbc63eb4ba7862417
      https://github.com/WebKit/WebKit/commit/a5376aab1bd33d7ed445439cbc63eb4ba7862417
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-16 (Tue, 16 Apr 2024)

  Changed paths:
    M Source/WebKit/Platform/cocoa/XPCUtilities.h
    M Source/WebKit/Platform/cocoa/XPCUtilities.mm
    M Source/WebKit/Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm
    M Source/WebKit/Shared/Cocoa/XPCEndpoint.mm
    M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm

  Log Message:
  -----------
  Revert "WebKit process termination with xpc_connection_kill does not always work"

This reverts commit 3c2c899f692d5278142b9c476868672da9ae8e04.


  Commit: 2443ef894bf319d9b4e41943a904c5a0c85fcf6d
      https://github.com/WebKit/WebKit/commit/2443ef894bf319d9b4e41943a904c5a0c85fcf6d
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.2

Canonical link: https://commits.webkit.org/272448.936@safari-7618.2.12.10-branch


  Commit: 68075b6641fcaa3e62e8d748848b015781d19707
      https://github.com/WebKit/WebKit/commit/68075b6641fcaa3e62e8d748848b015781d19707
  Author: Yijia Huang <yijia_huang at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/runtime/CachedTypes.cpp
    A Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp
    R Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in
    M Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
    M Source/WTF/wtf/spi/darwin/dyldSPI.h

  Log Message:
  -----------
  Cherry-pick eff5765b8477. rdar://126195542

    [JSC] Use JavaScriptCore framework dyld UUID for computing bytecode cache version
    https://bugs.webkit.org/show_bug.cgi?id=272660
    rdar://126195542

    Reviewed by Yusuke Suzuki.

    Previously, we used the JSCBuiltins.o, CachedTypes.o, and project source version
    number for computing JSC bytecode cache version. That may not strong enough
    to reject a stale bytecode cache. This patch utilizes JavaScriptCore.framework’s
    UUID to compute the bytecode cache hash version for Darwin OSes and uses
    __TIMESTAMP__ for the others.

    * Source/JavaScriptCore/CMakeLists.txt:
    * Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
    * Source/JavaScriptCore/Sources.txt:
    * Source/JavaScriptCore/runtime/CachedTypes.cpp:
    (JSC::GenericCacheEntry::GenericCacheEntry):
    (JSC::GenericCacheEntry::isUpToDate const):
    * Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp: Added.
    (JSC::computeJSCBytecodeCacheVersion):
    * Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in: Removed.
    * Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h:

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

Canonical link: https://commits.webkit.org/272448.937@safari-7618.2.12.10-branch


  Commit: 6c3336bce26e169ed0afd222684eddc7e2269cf0
      https://github.com/WebKit/WebKit/commit/6c3336bce26e169ed0afd222684eddc7e2269cf0
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/runtime/CachedTypes.cpp
    R Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp
    A Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in
    M Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
    M Source/WTF/wtf/spi/darwin/dyldSPI.h

  Log Message:
  -----------
  Revert rdar://126195542
* Source/JavaScriptCore/CMakeLists.txt:
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/Sources.txt:
* Source/JavaScriptCore/runtime/CachedTypes.cpp:
(JSC::GenericCacheEntry::GenericCacheEntry):
(JSC::GenericCacheEntry::isUpToDate const):
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp: Removed.
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in: Added.
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h:
* Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp:
* Source/WTF/wtf/spi/darwin/dyldSPI.h:


  Commit: 9f8097dee3c36547a878d378b6303e2129dfd44b
      https://github.com/WebKit/WebKit/commit/9f8097dee3c36547a878d378b6303e2129dfd44b
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/bytecode/ExpressionInfo.h
    M Source/JavaScriptCore/runtime/CachedTypes.cpp
    M Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.h
    A Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp
    R Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in
    M Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
    M Source/WTF/wtf/spi/darwin/dyldSPI.h

  Log Message:
  -----------
  Apply patch. rdar://126195542


  Commit: cf230d9707dfa18e211e166abfc3206d6f268a6f
      https://github.com/WebKit/WebKit/commit/cf230d9707dfa18e211e166abfc3206d6f268a6f
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/bytecode/ExpressionInfo.h
    M Source/JavaScriptCore/runtime/CachedTypes.cpp
    M Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.h
    R Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp
    A Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in
    M Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
    M Source/WTF/wtf/spi/darwin/dyldSPI.h

  Log Message:
  -----------
  Revert rdar://126195542

* Source/JavaScriptCore/CMakeLists.txt:
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/Sources.txt:
* Source/JavaScriptCore/bytecode/ExpressionInfo.h:
* Source/JavaScriptCore/runtime/CachedTypes.cpp:
(JSC::GenericCacheEntry::GenericCacheEntry):
(JSC::GenericCacheEntry::isUpToDate const):
* Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.h:
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp: Removed.
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in: Added.
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h:
* Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp:
* Source/WTF/wtf/spi/darwin/dyldSPI.h:


  Commit: 988bdce50871caf629ad17b03278a7545a1f2a3e
      https://github.com/WebKit/WebKit/commit/988bdce50871caf629ad17b03278a7545a1f2a3e
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/WebKit/Platform/cocoa/XPCUtilities.mm

  Log Message:
  -----------
  Cherry-pick 1bfeac262aa5. rdar://126479653

    Compile fix after <https://commits.webkit.org/277509@main>
    https://bugs.webkit.org/show_bug.cgi?id=272824
    rdar://126479653

    Unreviewed compile fix.

    * Source/WebKit/Platform/cocoa/XPCUtilities.mm:

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


  Commit: a2c0dd0613baee1c2e60a1d2ac8c30e162059510
      https://github.com/WebKit/WebKit/commit/a2c0dd0613baee1c2e60a1d2ac8c30e162059510
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/bytecode/ExpressionInfo.h
    M Source/JavaScriptCore/runtime/CachedTypes.cpp
    M Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.h
    A Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp
    R Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in
    M Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
    M Source/WTF/wtf/spi/darwin/dyldSPI.h

  Log Message:
  -----------
  Apply patch. rdar://126195542


  Commit: 783ba3a915a9155245ccdce194a73712d3046025
      https://github.com/WebKit/WebKit/commit/783ba3a915a9155245ccdce194a73712d3046025
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/WebKit/Platform/cocoa/XPCUtilities.mm

  Log Message:
  -----------
  Revert 988bdce50871

* Source/WebKit/Platform/cocoa/XPCUtilities.mm:


  Commit: 8aae01cfbe53d47cd711008dae5bc8f2069f5742
      https://github.com/WebKit/WebKit/commit/8aae01cfbe53d47cd711008dae5bc8f2069f5742
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/WebKit/Platform/cocoa/XPCUtilities.h
    M Source/WebKit/Platform/cocoa/XPCUtilities.mm
    M Source/WebKit/Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm
    M Source/WebKit/Shared/Cocoa/XPCEndpoint.mm
    M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm

  Log Message:
  -----------
  Cherry-pick 3c2c899f692d. rdar://126479653

    WebKit process termination with xpc_connection_kill does not always work
    https://bugs.webkit.org/show_bug.cgi?id=272669
    rdar://126479653

    Reviewed by Chris Dumez.

    WebKit process termination with xpc_connection_kill does not always work. We are currently seeing flaky
    termination behavior on macOS, where the child processes are not always terminated successfully.
    Additionally, on iOS, the XPC connection has become anonymous due to migration to extensions for WebKit
    processes, and xpc_connection_kill does not support anonymous connections. This patch addresses this
    issue by creating and sending a XPC message to the child process to request termination. This has a
    high chance of success, since we know that the XPC connection termination watchdog is holding a
    background assertion on the process, so it is not suspended. Additionally, the XPC message is being
    handled on the XPC event handler thread, which is handling very few messages, so it is very unlikely
    that it is blocked and cannot handle the message. This gives the process a chance to exit cleanly and
    send a reply back. If the UI process does not receive the expected reply, it will try calling
    xpc_connection_kill.

    * Source/WebKit/Platform/cocoa/XPCUtilities.h:
    * Source/WebKit/Platform/cocoa/XPCUtilities.mm:
    (WebKit::terminateWithReason):
    (WebKit::handleXPCExitMessage):
    * Source/WebKit/Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
    (WebKit::AuthenticationManager::initializeConnection):
    * Source/WebKit/Shared/Cocoa/XPCEndpoint.mm:
    (WebKit::XPCEndpoint::XPCEndpoint):
    * Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
    (WebKit::XPCServiceEventHandler):

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


  Commit: 5e5e258a00fadc90582c564613a0eb3557ebcf3f
      https://github.com/WebKit/WebKit/commit/5e5e258a00fadc90582c564613a0eb3557ebcf3f
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/WebKit/Platform/cocoa/XPCUtilities.mm

  Log Message:
  -----------
  Cherry-pick 1bfeac262aa5. rdar://126479653

    Compile fix after <https://commits.webkit.org/277509@main>
    https://bugs.webkit.org/show_bug.cgi?id=272824
    rdar://126479653

    Unreviewed compile fix.

    * Source/WebKit/Platform/cocoa/XPCUtilities.mm:

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


  Commit: da1cebe5c0b16070d0cd67c62f7044fbd95c3250
      https://github.com/WebKit/WebKit/commit/da1cebe5c0b16070d0cd67c62f7044fbd95c3250
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/WebKit/Configurations/BaseExtension.xcconfig
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj

  Log Message:
  -----------
  Cherry-pick 272448.936 at safari-7618-branch (e4b082b5052c). rdar://126637839

    Cherry-pick 277628 at main (0402a0f80064). rdar://126637918

        Change install location of WebKit process extensions
        https://bugs.webkit.org/show_bug.cgi?id=268946
        rdar://126613034

        Reviewed by Jonathan Bedard.

        This was previously landed in <https://commits.webkit.org/274425@main>. This patch addresses
        an issue where extensions are not discovered in the new location on Simulator.

        * Source/WebKit/Configurations/BaseExtension.xcconfig:
        * Source/WebKit/WebKit.xcodeproj/project.pbxproj:

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

    Canonical link: https://commits.webkit.org/272448.936@safari-7618-branch

Canonical link: https://commits.webkit.org/272448.946@safari-7618.2.12.10-branch


  Commit: 9943fcd94ec5ff4b5d8ba2efea75c1acd475dcb0
      https://github.com/WebKit/WebKit/commit/9943fcd94ec5ff4b5d8ba2efea75c1acd475dcb0
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/bytecode/ExpressionInfo.h
    M Source/JavaScriptCore/runtime/CachedTypes.cpp
    M Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.h
    R Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp
    A Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in
    M Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp
    M Source/WTF/wtf/spi/darwin/dyldSPI.h

  Log Message:
  -----------
  Revert rdar://126195542 (️CrashTracer: amsengagementd at com.apple.JavaScriptCore: JSC::CodeBlock::finishCreation)

this reverts commit a2c0dd0613baee1c2e60a1d2ac8c30e162059510

* Source/JavaScriptCore/CMakeLists.txt:
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/Sources.txt:
* Source/JavaScriptCore/bytecode/ExpressionInfo.h:
* Source/JavaScriptCore/runtime/CachedTypes.cpp:
(JSC::GenericCacheEntry::GenericCacheEntry):
(JSC::GenericCacheEntry::isUpToDate const):
* Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.h:
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp: Removed.
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.cpp.in: Added.
* Source/JavaScriptCore/runtime/JSCBytecodeCacheVersion.h:
* Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp:
* Source/WTF/wtf/spi/darwin/dyldSPI.h:


  Commit: c60dc8bf7ca2715a5f33fdaa2e70aba09e4e287b
      https://github.com/WebKit/WebKit/commit/c60dc8bf7ca2715a5f33fdaa2e70aba09e4e287b
  Author: David Degazio <d_degazio at apple.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/bytecode/CodeBlock.cpp
    M Source/JavaScriptCore/bytecode/MetadataTable.cpp
    M Source/JavaScriptCore/bytecode/MetadataTable.h
    M Source/JavaScriptCore/bytecode/UnlinkedMetadataTable.h

  Log Message:
  -----------
  Cherry-pick 4cac7925aca4. rdar://121747906

    [JSC] Mitigate null UnlinkedMetadataTable pointer in CodeBlock destructor
    https://bugs.webkit.org/show_bug.cgi?id=272787
    rdar://121747906

    Reviewed by Yusuke Suzuki.

    Attempts to fix a rare bug where the UnlinkedMetadataTable pointer accessed
    in the CodeBlock destructor can become null. We think this may be due to a
    series of thread-unsafe reference count operations that might allow the
    destructor to happen twice, perhaps simultaneously on two threads. This
    patch attempts to mitigate this by:

     1. Making UnlinkedMetadataTable and MetadataTable thread-safe refcounted.

     2. Checking for the presence of a null UnlinkedMetadataTable pointer in the
        appropriate functions, and attempting to handle it nonfatally. This means
        we skip updating the didOptimize state in the CodeBlock destructor, and
        that we intentionally leak MetadataTables if they have this null pointer.

    * Source/JavaScriptCore/bytecode/CodeBlock.cpp:
    (JSC::CodeBlock::~CodeBlock):
    * Source/JavaScriptCore/bytecode/MetadataTable.cpp:
    (JSC::MetadataTable::destroy):
    (JSC::MetadataTable::sizeInBytesForGC):
    * Source/JavaScriptCore/bytecode/MetadataTable.h:
    (JSC::MetadataTable::forEachValueProfile):
    (JSC::MetadataTable::valueProfileForOffset):
    (JSC::MetadataTable::deref):
    (JSC::MetadataTable::unlinkedMetadata const):
    (JSC::MetadataTable::totalSize const):
    * Source/JavaScriptCore/bytecode/UnlinkedMetadataTable.h:

    Canonical link: https://commits.webkit.org/272448.937@safari-7618-branch


  Commit: bcea360031f4051515ac914418208f2e274f0ce6
      https://github.com/WebKit/WebKit/commit/bcea360031f4051515ac914418208f2e274f0ce6
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm

  Log Message:
  -----------
  Cherry-pick 2aaac5377578. rdar://126706870

    Add page null check under [WKWebProcessPlugInFrame _browserContextController]
    https://bugs.webkit.org/show_bug.cgi?id=271174
    rdar://122276358

    Reviewed by Sihui Liu.

    Add page null check under [WKWebProcessPlugInFrame _browserContextController] to address
    some crashes in the wild.

    * Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
    (-[WKWebProcessPlugInFrame _browserContextController]):

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


  Commit: e9b873d82d80d6fd245788ab17b503113fa08487
      https://github.com/WebKit/WebKit/commit/e9b873d82d80d6fd245788ab17b503113fa08487
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.3

Canonical link: https://commits.webkit.org/272448.950@safari-7618.2.12.10-branch


  Commit: 15d90771ccc7f91e8cac75c5d82902bd0ed54fec
      https://github.com/WebKit/WebKit/commit/15d90771ccc7f91e8cac75c5d82902bd0ed54fec
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm
    M Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm
    M Tools/TestWebKitAPI/Tests/WebKit/OverrideAppleLanguagesPreference.mm

  Log Message:
  -----------
  Apply patch. rdar://126555755


  Commit: 3552c37f03f0d8a855ba8505c19d3b0e9782c5ec
      https://github.com/WebKit/WebKit/commit/3552c37f03f0d8a855ba8505c19d3b0e9782c5ec
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.4

Canonical link: https://commits.webkit.org/272448.952@safari-7618.2.12.10-branch


  Commit: c5dd61b4cbe2d51377e083e98c91390b599711cf
      https://github.com/WebKit/WebKit/commit/c5dd61b4cbe2d51377e083e98c91390b599711cf
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-04-22 (Mon, 22 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.5

Canonical link: https://commits.webkit.org/272448.953@safari-7618.2.12.10-branch


  Commit: 81c26e6a4483686853f4f88dbde6e212062755d3
      https://github.com/WebKit/WebKit/commit/81c26e6a4483686853f4f88dbde6e212062755d3
  Author: Keith Miller <keith_miller at apple.com>
  Date:   2024-04-22 (Mon, 22 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/assembler/MacroAssemblerARM64E.h
    M Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.cpp
    M Source/JavaScriptCore/jit/ThunkGenerators.cpp
    M Source/JavaScriptCore/llint/LLIntThunks.cpp
    M Source/JavaScriptCore/runtime/Options.cpp
    M Source/JavaScriptCore/runtime/OptionsList.h
    M Source/WTF/wtf/PtrTag.h
    M Source/WebKit/WebProcess/WebProcess.cpp
    M Tools/Scripts/run-jsc-stress-tests

  Log Message:
  -----------
  Cherry-pick f442fbe222f3. rdar://125596635

    Make it harder to get a PAC signing gadget in JIT code.
    https://bugs.webkit.org/show_bug.cgi?id=272750
    rdar://125596635

    Reviewed by Yusuke Suzuki.

    Right now if an attacker can control where code is allocated they can overlap code to create a PAC bypass.
    This patch makes that harder (in the WebContent process) by only allowing pacibsp and pacizb. This means
    that during arity fixup we now tag the return PC with pacizb. This is ok because we don't use the zero
    diversifier for anything. For reifying inlined call frames during OSR exit things are a bit more complicated.
    First we have be careful to only move signed return addresses into lr then untag them there. Also, we have
    to shuffle SP to point to where it would in reified frame. This means that there is technically live data
    below our SP, which on many OSes causes problems. Talking to our kernel folks however this isn't a problem
    as long as we don't have any signal handlers or run lldb expressions in this window. We don't use signal
    handlers in the WebContent process and this patch tries to limit/document the window of JIT code where lldb
    would trash the stack.

    * Source/JavaScriptCore/assembler/MacroAssemblerARM64E.h:
    (JSC::MacroAssemblerARM64E::tagPtr):
    * Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.cpp:
    (JSC::DFG::reifyInlinedCallFrames):
    (JSC::AssemblyHelpers::transferReturnPC):
    * Source/JavaScriptCore/jit/ThunkGenerators.cpp:
    (JSC::arityFixupGenerator):
    * Source/JavaScriptCore/llint/LLIntThunks.cpp:
    (JSC::LLInt::tagGateThunk):
    (JSC::LLInt::untagGateThunk):
    * Source/JavaScriptCore/runtime/OptionsList.h:
    * Source/WTF/wtf/PtrTag.h:
    * Source/WebKit/WebProcess/WebProcess.cpp:
    (WebKit::WebProcess::initializeProcess):
    * Tools/Scripts/run-jsc-stress-tests:

    Canonical link: https://commits.webkit.org/272448.948@safari-7618-branch

Canonical link: https://commits.webkit.org/272448.954@safari-7618.2.12.10-branch


  Commit: 40a1b705561be7cfd333ba4fe4e6804255b7db0d
      https://github.com/WebKit/WebKit/commit/40a1b705561be7cfd333ba4fe4e6804255b7db0d
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2024-04-23 (Tue, 23 Apr 2024)

  Changed paths:
    M Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm

  Log Message:
  -----------
  Cherry-pick 6c86b501dc6d. rdar://126717672

    [iOS] CRASH: exception thrown from AVVideoCaptureSource::stopSession()
    https://bugs.webkit.org/show_bug.cgi?id=273088
    rdar://126717672

    Reviewed by Eric Carlson.

    Crashtracer data shows that an exception is thrown from -[AVCaptureSession stopRunning] because that
    method is called after -beginConfiguration, but before -commitConfiguration. Make this method robust
    to that exception, and add our own ASSERT that we are not in the middle of configuration in order to
    catch this case before it gets to AVCapture.

    * Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm:
    (WebCore::AVVideoCaptureSource::stopSession):

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


  Commit: 85fac75af00cd45fe899b6f601126367c2956622
      https://github.com/WebKit/WebKit/commit/85fac75af00cd45fe899b6f601126367c2956622
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-23 (Tue, 23 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.6

Canonical link: https://commits.webkit.org/272448.956@safari-7618.2.12.10-branch


  Commit: 0de7121779f13d7234e48adc93cd2ff6efdc4cd9
      https://github.com/WebKit/WebKit/commit/0de7121779f13d7234e48adc93cd2ff6efdc4cd9
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.7

Canonical link: https://commits.webkit.org/272448.957@safari-7618.2.12.10-branch


  Commit: 08f0de8d751d2f1ba3df4e312b7c4ce9667ad0e7
      https://github.com/WebKit/WebKit/commit/08f0de8d751d2f1ba3df4e312b7c4ce9667ad0e7
  Author: Kimmo Kinnunen <kkinnunen at apple.com>
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
    M Source/ThirdParty/ANGLE/src/compiler/translator/msl/Name.cpp
    M Source/ThirdParty/ANGLE/src/compiler/translator/msl/TranslatorMSL.cpp
    M Source/ThirdParty/ANGLE/src/tests/gl_tests/GLSLTest.cpp

  Log Message:
  -----------
  Cherry-pick bce91c8033e3. rdar://126944294

    WebGL fails to compile shaders with out variables that are arrays and start with underscore
    rdar://126944294

    Reviewed by Chris Dumez.

    Integrates upstream commit:
    commit e0e91b8cbb2e096d2d009cd0d1fbe20d785f2263
    Author: Kimmo Kinnunen <kkinnunen at apple.com>
    Date:   Mon Apr 22 18:11:30 2024 -0700
    Metal: Fix rewritten out variables with underscores

    Fix compilation in case of output variables start with underscores.
    Make name emission always emit MSL name ANGLE_{name}, so that GLSL `_e`
    and `e` cannot clash. This regressed in angleproject:8558.

    Bug: b/335744344
    Change-Id: Ibae4dba4a24888acc1461582e69d48218ba11176
    Canonical link: https://commits.webkit.org/272448.959@safari-7618-branch

Canonical link: https://commits.webkit.org/272448.958@safari-7618.2.12.10-branch


  Commit: 4e7e6f90721fd9c3a3be4d7f564ebb729264fe39
      https://github.com/WebKit/WebKit/commit/4e7e6f90721fd9c3a3be4d7f564ebb729264fe39
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
    M Source/ThirdParty/ANGLE/src/compiler/translator/msl/Name.cpp
    M Source/ThirdParty/ANGLE/src/compiler/translator/msl/TranslatorMSL.cpp
    M Source/ThirdParty/ANGLE/src/tests/gl_tests/GLSLTest.cpp

  Log Message:
  -----------
  Revert "Cherry-pick bce91c8033e3. rdar://126944294"

This reverts commit 08f0de8d751d2f1ba3df4e312b7c4ce9667ad0e7.

Canonical link: https://commits.webkit.org/272448.959@safari-7618.2.12.10-branch


  Commit: ef7653da4436ada69c80432b6b963335b3926176
      https://github.com/WebKit/WebKit/commit/ef7653da4436ada69c80432b6b963335b3926176
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-04-29 (Mon, 29 Apr 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.8

Canonical link: https://commits.webkit.org/272448.960@safari-7618.2.12.10-branch


  Commit: 7cc38cbe11a204f06f5683ddcee4ccbbd4691ce2
      https://github.com/WebKit/WebKit/commit/7cc38cbe11a204f06f5683ddcee4ccbbd4691ce2
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-05-01 (Wed, 01 May 2024)

  Changed paths:
    M Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7618.2.12.10.9

Canonical link: https://commits.webkit.org/272448.961@safari-7618.2.12.10-branch


  Commit: 5b0e147c095567387a080a2da87c79f95ed04744
      https://github.com/WebKit/WebKit/commit/5b0e147c095567387a080a2da87c79f95ed04744
  Author: Aditya Keerthi <akeerthi at apple.com>
  Date:   2024-05-01 (Wed, 01 May 2024)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml

  Log Message:
  -----------
  Cherry-pick 687fbeefa898. rdar://127259364

    [iOS] Unable to upload photos to Adobe Express app
    https://bugs.webkit.org/show_bug.cgi?id=273444
    rdar://127259364

    Reviewed by Abrar Rahman Protyasha and Wenson Hsieh.

    Adobe Express does not support HEIC photo uploads.

    Disable the setting which only transcodes HEIC photo uploads to JPEG if the
    "accept" attribute on file inputs excludes the HEIC MIME type.

    Adobe Express specifies "image/*" in order to get support for Adobe Illustrator
    files, however, they still wish to exclude HEIC. Due to a bug in CoreServices,
    they are unable to specify a specific MIME type for Illustrator files.
    Consequently, they are forced to claim support for all image types.

    Fix by restoring the old behavior.

    * Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:

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

Canonical link: https://commits.webkit.org/272448.962@safari-7618.2.12.10-branch


Compare: https://github.com/WebKit/WebKit/compare/046928bac9d7%5E...5b0e147c0955

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