Branch: refs/heads/webkitglib/2.46
  Home:   https://github.com/WebKit/WebKit
  Commit: 8f06e1de98b5a86ffc7e3b06a31b33551b8c2aa1
      
https://github.com/WebKit/WebKit/commit/8f06e1de98b5a86ffc7e3b06a31b33551b8c2aa1
  Author: Alex Christensen <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    M Source/WebKit/Shared/API/APISerializedScriptValue.cpp

  Log Message:
  -----------
  Cherry-pick 282769@main (b4145d91c54d). 
https://bugs.webkit.org/show_bug.cgi?id=278682

    Fix assertion after 281812@main
    https://bugs.webkit.org/show_bug.cgi?id=278682
    rdar://134731526

    Reviewed by Timothy Hatcher.

    My assertion had an off-by-one error that was usually true because
    it was checking that uninitialized memory was 0.  JSStringGetUTF8CString
    returns a length that includes the null termination character, which
    I got correct in the call to WKStringCreateWithUTF8CStringWithLength
    but not in the assertion.  This fixes the assertion and makes the
    tests stop asserting in debug builds.

    * Source/WebKit/Shared/API/APISerializedScriptValue.cpp:
    (API::valueToWKObject):

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

Canonical link: https://commits.webkit.org/282416.54@webkitglib/2.46


  Commit: 2199e3ff7afe1deb4e60fffc77143363fc18090a
      
https://github.com/WebKit/WebKit/commit/2199e3ff7afe1deb4e60fffc77143363fc18090a
  Author: David Kilzer <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    M Source/WebCore/Modules/fetch/FetchBodySource.cpp
    M Source/WebCore/Modules/fetch/FetchBodySource.h
    M Source/WebCore/Modules/fetch/FetchResponse.cpp
    M Source/WebCore/Modules/fetch/FetchResponse.h
    M Source/WebCore/Modules/plugins/YouTubePluginReplacement.cpp
    M Source/WebCore/Modules/plugins/YouTubePluginReplacement.h
    M Source/WebCore/Modules/speech/SpeechRecognitionEvent.cpp
    M Source/WebCore/Modules/speech/SpeechRecognitionEvent.h
    M Source/WebCore/Modules/storage/StorageConnection.h
    M Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.cpp
    M Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.h
    M Source/WebCore/animation/CSSTransition.cpp
    M Source/WebCore/animation/CSSTransition.h
    M Source/WebCore/animation/DocumentTimeline.cpp
    M Source/WebCore/animation/DocumentTimeline.h
    M Source/WebCore/crypto/keys/CryptoKeyEC.cpp
    M Source/WebCore/crypto/keys/CryptoKeyEC.h
    M Source/WebCore/css/typedom/CSSUnparsedValue.cpp
    M Source/WebCore/css/typedom/CSSUnparsedValue.h
    M Source/WebCore/css/typedom/transform/CSSPerspective.cpp
    M Source/WebCore/css/typedom/transform/CSSPerspective.h
    M Source/WebCore/css/typedom/transform/CSSTransformValue.cpp
    M Source/WebCore/css/typedom/transform/CSSTransformValue.h
    M Source/WebCore/dom/DragEvent.cpp
    M Source/WebCore/dom/DragEvent.h
    M Source/WebCore/dom/InputEvent.cpp
    M Source/WebCore/dom/InputEvent.h
    M Source/WebCore/editing/ReplaceSelectionCommand.cpp
    M Source/WebCore/editing/ReplaceSelectionCommand.h
    M Source/WebCore/html/CollectionTraversalInlines.h
    M Source/WebCore/html/GenericCachedHTMLCollection.cpp
    M Source/WebCore/html/GenericCachedHTMLCollection.h
    M Source/WebCore/html/PluginDocument.cpp
    M Source/WebCore/html/PluginDocument.h
    M Source/WebCore/loader/cache/CachedSVGFont.cpp
    M Source/WebCore/loader/cache/CachedSVGFont.h
    M Source/WebCore/page/WorkerNavigator.cpp
    M Source/WebCore/page/WorkerNavigator.h
    M Source/WebCore/platform/audio/AudioDSPKernelProcessor.cpp
    M Source/WebCore/platform/audio/AudioDSPKernelProcessor.h
    M Source/WebCore/platform/audio/cocoa/WebAudioBufferList.cpp
    M Source/WebCore/platform/audio/cocoa/WebAudioBufferList.h
    M Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.h
    M Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.mm
    M Source/WebCore/platform/graphics/BitmapImageSource.cpp
    M Source/WebCore/platform/graphics/BitmapImageSource.h
    M Source/WebCore/platform/graphics/NativeImage.cpp
    M Source/WebCore/platform/graphics/NativeImage.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp
    M 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm
    M Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp
    M Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.h
    M Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.h
    M Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm
    M 
Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp
    M Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h
    M Source/WebCore/platform/mock/MockRealtimeVideoSource.h
    M Source/WebCore/rendering/style/BasicShapes.cpp
    M Source/WebCore/rendering/style/BasicShapes.h
    M Source/WebKit/NetworkProcess/Downloads/PendingDownload.cpp
    M Source/WebKit/NetworkProcess/Downloads/PendingDownload.h
    M Source/WebKit/Shared/WebImage.cpp
    M Source/WebKit/Shared/WebImage.h
    M Source/WebKit/UIProcess/API/APIInspectorConfiguration.cpp
    M Source/WebKit/UIProcess/API/APIInspectorConfiguration.h
    M Source/WebKit/UIProcess/Authentication/AuthenticationChallengeProxy.cpp
    M Source/WebKit/UIProcess/Authentication/AuthenticationChallengeProxy.h
    M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm
    M Source/WebKit/UIProcess/Notifications/WebNotificationManagerProxy.cpp
    M Source/WebKit/UIProcess/Notifications/WebNotificationManagerProxy.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxyInternals.h
    M 
Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp
    M Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h
    M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp
    M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h
    M Source/WebKit/WebProcess/Inspector/WebPageInspectorTarget.cpp
    M Source/WebKit/WebProcess/Inspector/WebPageInspectorTarget.h
    M Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp
    M Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.h
    M Source/WebKit/WebProcess/WebPage/WebCookieCache.cpp
    M Source/WebKit/WebProcess/WebPage/WebCookieCache.h
    M Source/WebKit/WebProcess/WebStorage/StorageNamespaceImpl.cpp
    M Source/WebKit/WebProcess/WebStorage/StorageNamespaceImpl.h
    M Source/WebKitLegacy/ios/WebCoreSupport/WebInspectorClientIOS.mm
    M Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.h
    M Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.mm

  Log Message:
  -----------
  Cherry-pick 282753@main (b2f4995bd769). 
https://bugs.webkit.org/show_bug.cgi?id=278630

    Move WebCore/WebKitLegacy/WebKit destructors to source files for upstream 
clang
    <https://bugs.webkit.org/show_bug.cgi?id=278630>
    <rdar://134660411>

    Reviewed by Darin Adler.

    In upstream clang, destructors require full class definitions for any
    instance variable that is destructed.  In most cases, moving the
    destructor out of the header fixes this build failure without
    increasing header parsing time.  Alternate fixes are noted below.

    * Source/WebCore/Modules/fetch/FetchBodySource.cpp:
    * Source/WebCore/Modules/fetch/FetchBodySource.h:
    * Source/WebCore/Modules/fetch/FetchResponse.cpp:
    * Source/WebCore/Modules/fetch/FetchResponse.h:
    * Source/WebCore/Modules/plugins/YouTubePluginReplacement.cpp:
    * Source/WebCore/Modules/plugins/YouTubePluginReplacement.h:
    * Source/WebCore/Modules/speech/SpeechRecognitionEvent.cpp:
    * Source/WebCore/Modules/speech/SpeechRecognitionEvent.h:
    * Source/WebCore/Modules/storage/StorageConnection.h:
    - Replace struct StorageEstimate predeclaration by including
      StorageEstimate.h since it's a small struct.
    * Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.cpp:
    * Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.h:
    * Source/WebCore/animation/CSSTransition.cpp:
    * Source/WebCore/animation/CSSTransition.h:
    * Source/WebCore/animation/DocumentTimeline.cpp:
    * Source/WebCore/animation/DocumentTimeline.h:
    * Source/WebCore/crypto/keys/CryptoKeyEC.cpp:
    * Source/WebCore/crypto/keys/CryptoKeyEC.h:
    * Source/WebCore/css/typedom/CSSUnparsedValue.cpp:
    * Source/WebCore/css/typedom/CSSUnparsedValue.h:
    * Source/WebCore/css/typedom/transform/CSSPerspective.cpp:
    * Source/WebCore/css/typedom/transform/CSSPerspective.h:
    * Source/WebCore/css/typedom/transform/CSSTransformValue.cpp:
    * Source/WebCore/css/typedom/transform/CSSTransformValue.h:
    * Source/WebCore/dom/DragEvent.cpp:
    * Source/WebCore/dom/DragEvent.h:
    * Source/WebCore/dom/InputEvent.cpp:
    * Source/WebCore/dom/InputEvent.h:
    * Source/WebCore/editing/ReplaceSelectionCommand.cpp:
    * Source/WebCore/editing/ReplaceSelectionCommand.h:
    * Source/WebCore/html/CollectionTraversalInlines.h:
    - Include HTMLOptionsCollectionInlines.h since this is needed in some
      source files.
    * Source/WebCore/html/GenericCachedHTMLCollection.cpp:
    * Source/WebCore/html/GenericCachedHTMLCollection.h:
    * Source/WebCore/html/PluginDocument.cpp:
    * Source/WebCore/html/PluginDocument.h:
    * Source/WebCore/loader/cache/CachedSVGFont.cpp:
    * Source/WebCore/loader/cache/CachedSVGFont.h:
    * Source/WebCore/page/WorkerNavigator.cpp:
    * Source/WebCore/page/WorkerNavigator.h:
    * Source/WebCore/platform/audio/AudioDSPKernelProcessor.cpp:
    * Source/WebCore/platform/audio/AudioDSPKernelProcessor.h:
    * Source/WebCore/platform/audio/cocoa/WebAudioBufferList.cpp:
    * Source/WebCore/platform/audio/cocoa/WebAudioBufferList.h:
    * Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.h:
    * Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.mm:
    * Source/WebCore/platform/graphics/BitmapImageSource.cpp:
    * Source/WebCore/platform/graphics/BitmapImageSource.h:
    * Source/WebCore/platform/graphics/NativeImage.cpp:
    * Source/WebCore/platform/graphics/NativeImage.h:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.h:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h:
    * 
Source/WebCore/platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm:
    * Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:
    * Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.h:
    * Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.h:
    * Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
    * 
Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp:
    * 
Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h:
    * Source/WebCore/platform/mock/MockRealtimeVideoSource.h:
    * Source/WebCore/rendering/style/BasicShapes.cpp:
    * Source/WebCore/rendering/style/BasicShapes.h:
    * Source/WebKit/NetworkProcess/Downloads/PendingDownload.cpp:
    * Source/WebKit/NetworkProcess/Downloads/PendingDownload.h:
    * Source/WebKit/Shared/WebImage.cpp:
    * Source/WebKit/Shared/WebImage.h:
    - Also mark WebImage class as final.
    * Source/WebKit/UIProcess/API/APIInspectorConfiguration.cpp:
    * Source/WebKit/UIProcess/API/APIInspectorConfiguration.h:
    * Source/WebKit/UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
    * Source/WebKit/UIProcess/Authentication/AuthenticationChallengeProxy.h:
    * Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
    - Include headers require for WebPageProxy::Internals destructor.
    - Declare WebPageProxy::Internals destructor for Cocoa platforms.
    * Source/WebKit/UIProcess/Notifications/WebNotificationManagerProxy.cpp:
    * Source/WebKit/UIProcess/Notifications/WebNotificationManagerProxy.h:
    * Source/WebKit/UIProcess/WebPageProxy.cpp:
    - Move class definition of WebPageProxyFrameLoadStateObserver to
      WebPageProxyInternals.h, leaving constructor and destructor here.
    - Declare WebPageProxy::Internals destructor for non-Cocoa platforms.
    * Source/WebKit/UIProcess/WebPageProxyInternals.h:
    - Move class definition of WebPageProxyFrameLoadStateObserver to here
      from WebPageProxy.cpp.
    * 
Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp:
    * Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
    * Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
    * Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h:
    * Source/WebKit/WebProcess/Inspector/WebPageInspectorTarget.cpp:
    * Source/WebKit/WebProcess/Inspector/WebPageInspectorTarget.h:
    * Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
    * Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.h:
    * Source/WebKit/WebProcess/WebPage/WebCookieCache.cpp:
    * Source/WebKit/WebProcess/WebPage/WebCookieCache.h:
    - Also mark WebCookieCache class as final.
    * Source/WebKit/WebProcess/WebStorage/StorageNamespaceImpl.cpp:
    * Source/WebKit/WebProcess/WebStorage/StorageNamespaceImpl.h:
    * Source/WebKitLegacy/ios/WebCoreSupport/WebInspectorClientIOS.mm:
    * Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.h:
    * Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.mm:

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

Canonical link: https://commits.webkit.org/282416.55@webkitglib/2.46


  Commit: 409641809e759ce5fa9115d85dc1debfe2f88833
      
https://github.com/WebKit/WebKit/commit/409641809e759ce5fa9115d85dc1debfe2f88833
  Author: Chris Dumez <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    M Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp

  Log Message:
  -----------
  Cherry-pick 282680@main (9a40e4dc60a5). 
https://bugs.webkit.org/show_bug.cgi?id=278576

    Regression(278911@main) Crash under AuxiliaryProcessProxy::shutDownProcess()
    https://bugs.webkit.org/show_bug.cgi?id=278576
    rdar://134235519

    Reviewed by Charlie Wolfe and Sihui Liu.

    Make sure we use the `connection` stack variable instead of `m_connection`
    as it might get cleared out.

    * Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:
    (WebKit::AuxiliaryProcessProxy::shutDownProcess):

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

Canonical link: https://commits.webkit.org/282416.56@webkitglib/2.46


  Commit: 1bf45e6a1b86a415c1ee9aa04d726a0b87757812
      
https://github.com/WebKit/WebKit/commit/1bf45e6a1b86a415c1ee9aa04d726a0b87757812
  Author: Yijia Huang <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    M Source/JavaScriptCore/wasm/WasmOMGIRGenerator.cpp

  Log Message:
  -----------
  Cherry-pick 282707@main (bfe0238da5a9). 
https://bugs.webkit.org/show_bug.cgi?id=278594

    [JSC] Fix memory leaks for AbstractHeap in OMGIRGenerator
    https://bugs.webkit.org/show_bug.cgi?id=278594
    rdar://134598934

    Reviewed by Yusuke Suzuki.

    Use unique_ptr for the AbstractHeap fields defined in
    OMGIRGenerator to avoid memory leaks.

    * Source/JavaScriptCore/wasm/WasmOMGIRGenerator.cpp:

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

Canonical link: https://commits.webkit.org/282416.57@webkitglib/2.46


  Commit: 14a96a1eb8018e734dc33c1f017a280de5053401
      
https://github.com/WebKit/WebKit/commit/14a96a1eb8018e734dc33c1f017a280de5053401
  Author: Alex Christensen <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    M Source/WebKit/UIProcess/WebPageProxy.cpp

  Log Message:
  -----------
  Cherry-pick 282669@main (d152a53cf0d1). 
https://bugs.webkit.org/show_bug.cgi?id=278571

    Fix debug assertion in WebPageProxy::loadDataWithNavigationShared after 
282655@main
    https://bugs.webkit.org/show_bug.cgi?id=278571
    rdar://134583835

    Reviewed by Richard Robinson.

    This fixes any use of WKWebView.loadData in a debug build.
    Covered by many API tests, which unfortunately have no EWS coverage.

    * Source/WebKit/UIProcess/WebPageProxy.cpp:
    (WebKit::WebPageProxy::loadDataWithNavigationShared):

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

Canonical link: https://commits.webkit.org/282416.58@webkitglib/2.46


  Commit: 13903c3afb0615cdfebccbed997b822d09d5286c
      
https://github.com/WebKit/WebKit/commit/13903c3afb0615cdfebccbed997b822d09d5286c
  Author: Ryan Reno <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/platform/ios/TestExpectations
    M LayoutTests/platform/mac-wk2/TestExpectations
    M Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.cpp
    M Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.h
    M Source/WebCore/Modules/webcodecs/WebCodecsAudioEncoder.cpp
    M Source/WebCore/Modules/webcodecs/WebCodecsAudioEncoder.h
    A Source/WebCore/Modules/webcodecs/WebCodecsControlMessage.h
    M Source/WebCore/Modules/webcodecs/WebCodecsVideoDecoder.cpp
    M Source/WebCore/Modules/webcodecs/WebCodecsVideoDecoder.h
    M Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.cpp
    M Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.h
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj

  Log Message:
  -----------
  Cherry-pick 282657@main (dcc8d978d725). 
https://bugs.webkit.org/show_bug.cgi?id=278356

    REGRESSION (280738@main) [WebCodecs] Audio and Video codecs can be garbage 
collected with pending work.
    https://bugs.webkit.org/show_bug.cgi?id=278356
    rdar://134297589

    Reviewed by Youenn Fablet.

    In 280738@main http/wpt/webcodecs/hevc-encoder-config.https.any.html
    became flaky. This is because the VideoEncoder object goes out of scope
    as soon as the configure steps schedule the control message to reject
    the configuration and sometimes gets garbage collected before the error
    callback can be called. Prior to 280738@main the callback was a GC root
    and so would never be collected. After this, though, the codec is
    responsible for keeping its JS callbacks alive and so sometimes
    everything gets collected.

    Many of the WebCodecs steps require asynchronous work to be scheduled
    which gives the algorithms many states where it is valid to have
    outstanding work but all references to the codecs have been dropped in
    JavaScript. In order to prevent them from being prematurely collected
    this patch introduces an abstraction for the WebCodecs Control Message.
    This object represents pending work and will hold a PendingActivity
    for the codec which will prevent it from being garbage collected before
    the spec algorithm steps have been completed. Additionally, we will
    create a pending activity when we submit asynchronous work to the
    internal codec implementation.

    * LayoutTests/TestExpectations:
    * LayoutTests/platform/ios/TestExpectations:
    * LayoutTests/platform/mac-wk2/TestExpectations:
    * Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.cpp:
    (WebCore::WebCodecsAudioDecoder::configure):
    (WebCore::WebCodecsAudioDecoder::decode):
    (WebCore::WebCodecsAudioDecoder::flush):
    (WebCore::WebCodecsAudioDecoder::closeDecoder):
    (WebCore::WebCodecsAudioDecoder::resetDecoder):
    (WebCore::WebCodecsAudioDecoder::queueControlMessageAndProcess):
    (WebCore::WebCodecsAudioDecoder::virtualHasPendingActivity const):
    * Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.h:
    * Source/WebCore/Modules/webcodecs/WebCodecsAudioEncoder.cpp:
    (WebCore::WebCodecsAudioEncoder::configure):
    (WebCore::WebCodecsAudioEncoder::encode):
    (WebCore::WebCodecsAudioEncoder::flush):
    (WebCore::WebCodecsAudioEncoder::closeEncoder):
    (WebCore::WebCodecsAudioEncoder::resetEncoder):
    (WebCore::WebCodecsAudioEncoder::queueControlMessageAndProcess):
    (WebCore::WebCodecsAudioEncoder::virtualHasPendingActivity const):
    * Source/WebCore/Modules/webcodecs/WebCodecsAudioEncoder.h:
    * Source/WebCore/Modules/webcodecs/WebCodecsControlMessage.h: Added.
    * Source/WebCore/Modules/webcodecs/WebCodecsFlushPromise.h: Added.
    * Source/WebCore/Modules/webcodecs/WebCodecsVideoDecoder.cpp:
    (WebCore::WebCodecsVideoDecoder::configure):
    (WebCore::WebCodecsVideoDecoder::decode):
    (WebCore::WebCodecsVideoDecoder::flush):
    (WebCore::WebCodecsVideoDecoder::closeDecoder):
    (WebCore::WebCodecsVideoDecoder::resetDecoder):
    (WebCore::WebCodecsVideoDecoder::queueControlMessageAndProcess):
    (WebCore::WebCodecsVideoDecoder::virtualHasPendingActivity const):
    * Source/WebCore/Modules/webcodecs/WebCodecsVideoDecoder.h:
    * Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.cpp:
    (WebCore::WebCodecsVideoEncoder::configure):
    (WebCore::WebCodecsVideoEncoder::encode):
    (WebCore::WebCodecsVideoEncoder::flush):
    (WebCore::WebCodecsVideoEncoder::closeEncoder):
    (WebCore::WebCodecsVideoEncoder::resetEncoder):
    (WebCore::WebCodecsVideoEncoder::queueControlMessageAndProcess):
    (WebCore::WebCodecsVideoEncoder::virtualHasPendingActivity const):
    * Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.h:
    * Source/WebCore/WebCore.xcodeproj/project.pbxproj:

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

Canonical link: https://commits.webkit.org/282416.59@webkitglib/2.46


  Commit: 37b2a5aa62b68bc2b1036c73bf3fef35cdea6d78
      
https://github.com/WebKit/WebKit/commit/37b2a5aa62b68bc2b1036c73bf3fef35cdea6d78
  Author: Yusuke Suzuki <[email protected]>
  Date:   2024-09-03 (Tue, 03 Sep 2024)

  Changed paths:
    A 
LayoutTests/svg/masking/masker-mixing-repaint-rect-and-bounding-box-expected.html
    A LayoutTests/svg/masking/masker-mixing-repaint-rect-and-bounding-box.html
    M Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp
    M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceGradient.cpp
    M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceMasker.cpp

  Log Message:
  -----------
  Cherry-pick 282651@main (bdbc42414835). 
https://bugs.webkit.org/show_bug.cgi?id=277624

    REGRESSION (269500@main Safari 17.5): Masked Curved Line Rendering Issue
    https://bugs.webkit.org/show_bug.cgi?id=277624
    rdar://133251058

    Reviewed by Cameron McCormack.

    SVG mask implementation is incorrectly mixing repaint rect and bounding box.
    We workaround the issue by passing RepaintRectCalculation::Accurate to 
enforce
    child renderers to compute bounding boxes. But the right implementation 
should
    distinguish repaint rect and bounding box as repaint rect is just used for
    invalidation.

    * 
LayoutTests/svg/masking/masker-mixing-repaint-rect-and-bounding-box-expected.html:
 Added.
    * LayoutTests/svg/masking/masker-mixing-repaint-rect-and-bounding-box.html: 
Added.
    * Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp:
    (WebCore::RenderSVGResourceMasker::applyMask):
    * Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceGradient.cpp:
    (WebCore::createMaskAndSwapContextForTextGradient):
    (WebCore::clipToTextMask):
    * Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceMasker.cpp:
    (WebCore::LegacyRenderSVGResourceMasker::applyResource):

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

Canonical link: https://commits.webkit.org/282416.60@webkitglib/2.46


  Commit: 41fc21bd8a8ef13a754d78334110f318897bc5b6
      
https://github.com/WebKit/WebKit/commit/41fc21bd8a8ef13a754d78334110f318897bc5b6
  Author: Yusuke Suzuki <[email protected]>
  Date:   2024-09-04 (Wed, 04 Sep 2024)

  Changed paths:
    M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
    M Source/JavaScriptCore/bytecode/InlineCacheCompiler.h

  Log Message:
  -----------
  Cherry-pick 282538@main (211071789f3b). 
https://bugs.webkit.org/show_bug.cgi?id=278435

    Unreviewed, suppress wrong threading assertion for InlineCacheHandler
    https://bugs.webkit.org/show_bug.cgi?id=278435
    rdar://134290611

    It gets destroyed in the GC end phase and it gets stale assertion about 
threading checks. But that assertion is wrong since
    GC end phase is ensuring that we are not running mutator, so we can safely 
and correctly derefing this InlineCacheHandler inside it.
    This is fixing this wrong assertion.

    * Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp:
    (JSC::m_watchpoint):
    * Source/JavaScriptCore/bytecode/InlineCacheCompiler.h:

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

Canonical link: https://commits.webkit.org/282416.61@webkitglib/2.46


  Commit: 6a5390c0d8d184560bb1566cb65a668ea92f40c5
      
https://github.com/WebKit/WebKit/commit/6a5390c0d8d184560bb1566cb65a668ea92f40c5
  Author: Simon Fraser <[email protected]>
  Date:   2024-09-04 (Wed, 04 Sep 2024)

  Changed paths:
    M Source/WebCore/platform/graphics/RoundedRect.cpp
    M Source/WebCore/rendering/BackgroundPainter.cpp
    M Source/WebCore/rendering/BackgroundPainter.h
    M Source/WebCore/rendering/RenderReplaced.cpp
    M Source/WebCore/rendering/RenderWidget.cpp

  Log Message:
  -----------
  Cherry-pick 282503@main (7a9185505356). 
https://bugs.webkit.org/show_bug.cgi?id=278348

    Fix handling of non-renderable inner rounded corners
    https://bugs.webkit.org/show_bug.cgi?id=278348
    rdar://134291462

    Reviewed by Alan Baradlay.

    117367@main added some code for non-renderable inner borders, but this is 
really a bug in RoundedRect::adjustRadii(),
    which used `int` for `maxRadiusWidth` and `maxRadiusHeight` which caused 
the adjustment to fail to make the rect
    renderable for some rects (tested by 
fast/css/background-clip-radius-values.html).

    After fixing that, I could not find any layout tests that entered 
`BackgroundPainter::clipRoundedInnerRect()`
    with a non-renderable rect, but add a clause to fix up the rect if 
necessary.

    * Source/WebCore/rendering/BackgroundPainter.cpp:
    (WebCore::BackgroundPainter::paintFillLayer const):
    (WebCore::BackgroundPainter::clipRoundedInnerRect):
    * Source/WebCore/rendering/BackgroundPainter.h:
    * Source/WebCore/rendering/RenderReplaced.cpp:
    (WebCore::RenderReplaced::paint):
    * Source/WebCore/rendering/RenderWidget.cpp:
    (WebCore::RenderWidget::paint):

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

Canonical link: https://commits.webkit.org/282416.62@webkitglib/2.46


  Commit: e5b56d46bc20ab594399a7d3567348cc1a92a780
      
https://github.com/WebKit/WebKit/commit/e5b56d46bc20ab594399a7d3567348cc1a92a780
  Author: Michael Catanzaro <[email protected]>
  Date:   2024-09-04 (Wed, 04 Sep 2024)

  Changed paths:
    M Source/WebCore/platform/glib/UserAgentQuirks.cpp
    M Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp

  Log Message:
  -----------
  Cherry-pick 283092@main (5d23ecc3650c). 
https://bugs.webkit.org/show_bug.cgi?id=278723

    [GTK][WPE] Add user agent quirk for totale.rosettastone.com
    https://bugs.webkit.org/show_bug.cgi?id=278723

    Reviewed by Adrian Perez de Castro.

    * Source/WebCore/platform/glib/UserAgentQuirks.cpp:
    (WebCore::urlRequiresMacintoshPlatform):
    * Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
    (TestWebKitAPI::TEST(UserAgentTest, Quirks)):

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

Canonical link: https://commits.webkit.org/282416.63@webkitglib/2.46


Compare: https://github.com/WebKit/WebKit/compare/7f0623979f53...e5b56d46bc20

To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to