Branch: refs/heads/webkitglib/2.54
  Home:   https://github.com/WebKit/WebKit
  Commit: 14b236e9bd787f31feb7277a58882c2831dca14b
      
https://github.com/WebKit/WebKit/commit/14b236e9bd787f31feb7277a58882c2831dca14b
  Author: Yulun Wu <[email protected]>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A LayoutTests/ipc/getpixelbuffer-layerbacking-heap-disclosure-expected.txt
    A LayoutTests/ipc/getpixelbuffer-layerbacking-heap-disclosure.html
    M Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.cpp
    M 
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBitmapBackend.cpp

  Log Message:
  -----------
  Cherry-pick [email protected] (47dab0040d33). 
https://bugs.webkit.org/show_bug.cgi?id=318455

    putPixelBuffer() and getPixelBuffer() are not applicable for LayerBacking()
    https://bugs.webkit.org/show_bug.cgi?id=318455
    rdar://177958824

    Reviewed by Said Abou-Hallawa.

  

Per
264004@main, putPixelBuffer() and getPixelBuffer() are not applicable
    for LayerBacking. This PR enforces that comment by adding a MESSAGE_CHECK().

    This PR also updates the no-op override to zero-fill its
    destination instead of leaving it uninitialized to fail gracefully
    on release builds while still hitting the assert in debug.

    * LayoutTests/ipc/getpixelbuffer-layerbacking-heap-disclosure-expected.txt: 
Added.
    * LayoutTests/ipc/getpixelbuffer-layerbacking-heap-disclosure.html: Added.
    * Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.cpp:
    (WebKit::RemoteImageBuffer::getPixelBuffer):
    (WebKit::RemoteImageBuffer::putPixelBuffer):
    * 
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBitmapBackend.cpp:
    (WebKit::ImageBufferShareableMappedIOSurfaceBitmapBackend::getPixelBuffer):

    Identifier: [email protected]

Canonical
link:
https://flagged.apple.com:443/proxy?t2=Do3e3S3Iv1&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE3Njk1LjIxNEB3ZWJraXRnbGliLzIuNTQ=&emid=980a3b45-8ac9-4225-8f39-ad11aae908fe&c=11


  Commit:
d049c1c628062ff902118a355ae63491c327b86f
      
https://github.com/WebKit/WebKit/commit/d049c1c628062ff902118a355ae63491c327b86f
  Author: Yijia Huang <[email protected]>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A JSTests/stress/arith-abs-checked-input-range.js
    M Source/JavaScriptCore/dfg/DFGIntegerRangeOptimizationPhase.cpp

  Log Message:
  -----------
  Cherry-pick [email protected] (f778c76c61d1). 
https://bugs.webkit.org/show_bug.cgi?id=317611

    [JSC] Pin upstream checks that DFG IRO range proofs rely on
    rdar://179027979
    https://bugs.webkit.org/show_bug.cgi?id=317611

    Reviewed by Keith Miller.

    DFGIntegerRangeOptimizationPhase (IRO) flips checked arithmetic to
    Arith::Unchecked using range proofs derived
from
other checked ops in
    the graph, but doesn't record that dependency. DFG DCE can then remove
    those upstream checks (when their values are otherwise unread), making
    IRO's earlier
mutations unsound at runtime.

    * rangeFor() now returns a RangeBound { value, proof } per axis,
    where proof points to the relationship that produced the tight
    bound (one per axis; ties resolved by first encountered).

    * pinRangeBounds(...) is a variadic helper that sets NodeMustGenerate
    on the producers behind each given bound's proof. Every site that
    flips a checked op to Arith::Unchecked calls it with only the
    bounds the proof actually consulted.

    Test: JSTests/stress/arith-abs-checked-input-range.js
    Identifier: [email protected]

Canonical link: 
https://flagged.apple.com:443/proxy?t2=Dy6a5J3Zd2&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE3Njk1LjIxNUB3ZWJraXRnbGliLzIuNTQ=&emid=980a3b45-8ac9-4225-8f39-ad11aae908fe&c=11


 
Commit: ec2f180698e19f44a79be4c0c813b5d9ef9bfb72
      
https://github.com/WebKit/WebKit/commit/ec2f180698e19f44a79be4c0c813b5d9ef9bfb72
 
Author: Youenn Fablet <[email protected]>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A
LayoutTests/http/wpt/webcodecs/videoDecoder-concurrent-decode-output-no-crash-expected.txt
    A 
LayoutTests/http/wpt/webcodecs/videoDecoder-concurrent-decode-output-no-crash.html
    M Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp

  Log Message:
  -----------
  Cherry-pick [email protected] (50232798d951). 
https://bugs.webkit.org/show_bug.cgi?id=317611

    Race on RemoteVideoDecoderCallbacks::m_timestampToDuration leads to 
use-after-free
    rdar://177096608

    Reviewed by Jean-Yves Avenard.

    RemoteVideoDecoderCallbacks::addDuration is called from the JS thread that 
invoked VideoDecoder.decode.
    RemoteVideoDecoderCallbacks::notifyDecodingResult is called from the 
LibWebRTCCodecs
work queue.
    Both mutate m_timestampToDuration so we need to add a lock to ensure 
synchronization.
    We also make m_isClosed atomic
on both the decoder and encoder callback objects as it is written in a thread 
and read in another.

   
Patch mostly written by Simon Lewis.

    * 
LayoutTests/http/wpt/webcodecs/videoDecoder-concurrent-decode-output-no-crash-expected.txt:
 Added.
    * 
LayoutTests/http/wpt/webcodecs/videoDecoder-concurrent-decode-output-no-crash.html:
 Added.
    * Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp:
    (WebKit::RemoteVideoDecoderCallbacks::addDuration):
    (WebKit::RemoteVideoDecoderCallbacks::takeDuration):
    (WebKit::RemoteVideoDecoderCallbacks::notifyDecodingResult):

    Identifier: [email protected]

Canonical link: 
https://flagged.apple.com:443/proxy?t2=DX0C3o0On9&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE3Njk1LjIxNkB3ZWJraXRnbGliLzIuNTQ=&emid=980a3b45-8ac9-4225-8f39-ad11aae908fe&c=11


Compare:
https://github.com/WebKit/WebKit/compare/130cbb0bb5dc...ec2f180698e1

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

Reply via email to