Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 672cdd38781cce183724930a1d2e31ca4dc2008d
      
https://github.com/WebKit/WebKit/commit/672cdd38781cce183724930a1d2e31ca4dc2008d
  Author: Shu-yu Guo <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    A JSTests/stress/private-names-seal-freeze.js
    M Source/JavaScriptCore/runtime/PropertyTable.cpp

  Log Message:
  -----------
  [JSC] Don't set attributes on private fields when sealing/freezing
https://bugs.webkit.org/show_bug.cgi?id=303357
rdar://165252763

Reviewed by Yusuke Suzuki and Mark Lam.

This PR makes it such that when sealing and freezing objects, entries in the
PropertyTable that are private fields do not change their attributes.  Private
fields are not properties from the spec's point of view, and thus don't have
attributes.

Ensuring private field entries simplifies assumptions in the JITs, as they can
assume having attributes when setting a property results in a structure
transition.

Test: JSTests/stress/private-names-seal-freeze.js

Originally-landed-as: 301765.343@safari-7623-branch (b6b02057f0c4). 
rdar://171560076
Canonical link: https://commits.webkit.org/308512@main


  Commit: 199f8663c39b5b9ff9dfd0be6369ac6ada7e9d87
      
https://github.com/WebKit/WebKit/commit/199f8663c39b5b9ff9dfd0be6369ac6ada7e9d87
  Author: Abrar Rahman Protyasha <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm

  Log Message:
  -----------
  UI process crash due to non-main thread UIGestureRecognizer access in 
ImageAnalysisGestureDeferralToken
rdar://165459416

Reviewed by Ryosuke Niwa and Aditya Keerthi.

Due to system changes (likely under VKCImageAnalyzer), completions
passed to -processRequest:progressHandler:completionHandler: can now be
dispatched on background threads.

This means that ~ImageAnalysisGestureDeferralToken ends up executing on
said background thread, which ends up in a non-main thread access/write
of WKDeferringGestureRecognizer. This is against the UIGestureRecognizer
API contract.

To fix this, we simply ensure a main runloop hop before executing the
business logic in ~ImageAnalysisGestureDeferralToken.

No test since I was unable to force the request processing cleanup to
fire in a non-main thread.

* Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:

Originally-landed-as: 301765.349@safari-7623-branch (2da2d8c81eb9). 
rdar://171559882
Canonical link: https://commits.webkit.org/308513@main


  Commit: f45f20af9c44bf1de287a53dbfd644a7e75e3b38
      
https://github.com/WebKit/WebKit/commit/f45f20af9c44bf1de287a53dbfd644a7e75e3b38
  Author: Anthony Tarbinian <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    A LayoutTests/workers/worker-set-delete-terminate-crash-expected.txt
    A LayoutTests/workers/worker-set-delete-terminate-crash.html
    M Source/JavaScriptCore/runtime/OrderedHashTableHelper.h

  Log Message:
  -----------
  [JSC] Modifying storage in OrderedHashTableHelper should 
DeferTerminationForAWhile
https://bugs.webkit.org/show_bug.cgi?id=303658
rdar://162356649

Reviewed by Keith Miller.

When resizing storage in OrderedHashTableHelper (via addImpl or shinkIfNeeded),
it's possible to leave the storage in an inconsistent state if we handle a
termination exception. For consistency, we should DeferTerminationForAWhile
until the storage has been fully updated.

Test: workers/worker-set-delete-terminate-crash.html

* LayoutTests/workers/worker-set-delete-terminate-crash-expected.txt: Added.
* LayoutTests/workers/worker-set-delete-terminate-crash.html: Added.
* Source/JavaScriptCore/runtime/OrderedHashTableHelper.h:
(JSC::OrderedHashTableHelper::addImpl):
(JSC::OrderedHashTableHelper::shrinkIfNeeded):

Originally-landed-as: 301765.357@safari-7623-branch (eccc2eed44f9). 
rdar://171559517
Canonical link: https://commits.webkit.org/308514@main


  Commit: f37a6731b01fb0ea991fddc7091d9c9680daf9c2
      
https://github.com/WebKit/WebKit/commit/f37a6731b01fb0ea991fddc7091d9c9680daf9c2
  Author: Jean-Yves Avenard <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M Source/WebCore/platform/graphics/avfoundation/AudioVideoRendererAVFObjC.mm

  Log Message:
  -----------
  com.apple.WebKit.GPU at WebCore:  WebCore::AudioVideoRendererAVFObjC::addTrack
https://bugs.webkit.org/show_bug.cgi?id=302044
rdar://163901063

Reviewed by Youenn Fablet.

To get around a SaferCPP static analyser false-positive we had switched the
order of where the retain was being applied.
The underlying SaferCPP false positive has been silenced 299825@main
we no longer need that workaround.

In addition, should we fail to allocate the related layer (audio or video)
we will treat it as an error rather than fail silently and break playback.

* Source/WebCore/platform/graphics/avfoundation/AudioVideoRendererAVFObjC.mm:
(WebCore::AudioVideoRendererAVFObjC::AudioVideoRendererAVFObjC):
(WebCore::AudioVideoRendererAVFObjC::addAudioRenderer):
(WebCore::AudioVideoRendererAVFObjC::ensureLayer):
(WebCore::AudioVideoRendererAVFObjC::ensureVideoRenderer):

Originally-landed-as: 301765.360@safari-7623-branch (ab343b737e64). 
rdar://171559110
Canonical link: https://commits.webkit.org/308515@main


  Commit: 7afdc436a98c9771c5eb23a00db3211b7dcb3575
      
https://github.com/WebKit/WebKit/commit/7afdc436a98c9771c5eb23a00db3211b7dcb3575
  Author: Jer Noble <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M Source/WebCore/platform/audio/AudioResamplerKernel.cpp

  Log Message:
  -----------
  Integer underflow in AudioResamplerKernel::getSourceSpan()
rdar://162552376
https://bugs.webkit.org/show_bug.cgi?id=303959

Reviewed by Eric Carlson.

Protect against underflows when calculating the number of
source frames needed using WTF::safeSub().

* Source/WebCore/platform/audio/AudioResamplerKernel.cpp:
(WebCore::AudioResamplerKernel::getSourceSpan):

Originally-landed-as: 301765.369@safari-7623-branch (ee36b92f6f9f). 
rdar://171558934
Canonical link: https://commits.webkit.org/308516@main


Compare: https://github.com/WebKit/WebKit/compare/0cec9abc2b8a...7afdc436a98c

To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to