Branch: refs/heads/webkitglib/2.52
  Home:   https://github.com/WebKit/WebKit
  Commit: ba2cb3ccac962cb8440ec2a1b268769eb30b0734
      
https://github.com/WebKit/WebKit/commit/ba2cb3ccac962cb8440ec2a1b268769eb30b0734
  Author: Youenn Fablet <[email protected]>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M Source/WebCore/Modules/streams/ReadableByteStreamController.cpp
    M Source/WebCore/Modules/streams/ReadableStreamBYOBRequest.cpp
    M Source/WebCore/Modules/streams/ReadableStreamBYOBRequest.h

  Log Message:
  -----------
  Cherry-pick 305413.480@safari-7624-branch (5d62bc6b2841). 
https://bugs.webkit.org/show_bug.cgi?id=312938

    Potential use after free of m_controller under 
ReadableStreamBYOBRequest::visitAdditionalChildren()
    rdar://172462937

    Reviewed by Chris Dumez.

    m_controller can be nullified while being used in GC thread.
    We remove usage of m_controller in the GC thread.
    Instead, request will store its stream as a JSValueInWrappedObject, and we 
will use this JSValueInWrappedObject in the GC thread.
    We make sure to clear the JSValueInWrappedObject when the request gets 
invalidated.

    Identifier: 305413.480@safari-7624-branch

Canonical link: https://commits.webkit.org/305877.681@webkitglib/2.52


  Commit: 2c8d7528b97f9c206242cb52088b3721b7e8d167
      
https://github.com/WebKit/WebKit/commit/2c8d7528b97f9c206242cb52088b3721b7e8d167
  Author: Philippe Normand <[email protected]>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceAgent.cpp
    M Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceStream.cpp
    M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp

  Log Message:
  -----------
  Cherry-pick 312189@main (6ff991b88b5f). 
https://bugs.webkit.org/show_bug.cgi?id=312269

    [GStreamer][Rice] Flaky crash in 
`rice_proto::conncheck::ConnCheckList::add_local_candidate_internal()`
    https://bugs.webkit.org/show_bug.cgi?id=312269

    Reviewed by Xabier Rodriguez-Calvar.

    There was a race condition where the agent would start closing, wake-up it 
main loop and that would
    trigger a local candidate notification after rice_agent_close() was called. 
We now distinguish the
    "closing" case from the "closed" case using an enum that can be checked 
before processing local
    candidate notifications.

    * LayoutTests/platform/gtk/TestExpectations:
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceAgent.cpp:
    (_WebKitGstIceAgentPrivate::WTF_GUARDED_BY_LOCK):
    (webkitGstWebRTCIceAgentAddStream):
    (webkitGstWebRTCIceAgentClosed):
    (webkitGstWebRTCIceAgentClose):
    (webkitGstWebRTCIceAgentConstructed):
    (webkitGstWebRTCIceAgentLocalCandidateGatheredForStream):
    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceStream.cpp:
    (webkitGstWebRTCIceStreamAddLocalGatheredCandidate):
    * 
Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp:
    (WebCore::GStreamerRtpSenderBackend::getParameters const):

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

Canonical link: https://commits.webkit.org/305877.682@webkitglib/2.52


  Commit: e2cc88b2940e0ac40426e1ee026785b7b55096b9
      
https://github.com/WebKit/WebKit/commit/e2cc88b2940e0ac40426e1ee026785b7b55096b9
  Author: Philippe Normand <[email protected]>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceAgent.cpp

  Log Message:
  -----------
  Cherry-pick 313836@main (f9a8c97fce94). 
https://bugs.webkit.org/show_bug.cgi?id=315469

    [GStreamer][WebRTC][Rice] 
imported/w3c/web-platform-tests/webrtc/RTCDataChannel-send-close-array-buffer.window.html
 flaky crashes
    https://bugs.webkit.org/show_bug.cgi?id=315469

    Reviewed by Xabier Rodriguez-Calvar.

    Protect access to the streams hashmap using a mutex, otherwise we might 
crash when being notified of
    incoming data while a close procedure is on-going.

    * Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceAgent.cpp:
    (webkitGstWebRTCIceAgentAddStream):
    (webkitGstWebRTCIceAgentSetTos):
    (webkitGstWebRTCIceAgentClosed):
    (findStreamAndApply):
    (webkitGstWebRTCIceAgentConfigure):
    (webkitGstWebRTCIceAgentGatheringDoneForStream):
    (webkitGstWebRTCIceAgentLocalCandidateGatheredForStream):
    (webkitGstWebRTCIceAgentNewSelectedPairForStream):
    (webkitGstWebRTCIceAgentComponentStateChangedForStream):

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

Canonical link: https://commits.webkit.org/305877.683@webkitglib/2.52


  Commit: d859d3f7bc1206fcded3b464780e459342cd47d3
      
https://github.com/WebKit/WebKit/commit/d859d3f7bc1206fcded3b464780e459342cd47d3
  Author: Aditya Keerthi <[email protected]>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    A 
LayoutTests/fast/forms/date/date-editable-components/date-editable-components-change-type-on-input-event-expected.txt
    A 
LayoutTests/fast/forms/date/date-editable-components/date-editable-components-change-type-on-input-event.html
    M LayoutTests/platform/gtk/TestExpectations
    M Source/WebCore/html/BaseDateAndTimeInputType.cpp
    M Source/WebCore/html/BaseDateAndTimeInputType.h
    M Source/WebCore/html/shadow/DateTimeEditElement.cpp
    M Source/WebCore/html/shadow/DateTimeEditElement.h

  Log Message:
  -----------
  Cherry-pick 305413.565@safari-7624-branch (f49e83162fdd). 
https://bugs.webkit.org/show_bug.cgi?id=310544

    Use-After-Free in `BaseDateAndTimeInputType::didChangeValueFromControl`
    https://bugs.webkit.org/show_bug.cgi?id=310544
    rdar://173012873

    Reviewed by Abrar Rahman Protyasha and Lily Spiniolas.

    `BaseDateAndTimeInputType::didChangeValueFromControl()` dispatches `input`
    events without protecting itself. An event handler can change the input's 
type
    (e.g., from `date` to `text`), which replaces 
`HTMLInputElement::m_inputType`
    and destroys the `BaseDateAndTimeInputType` instance. After the event 
handler
    returns, the function continues executing `setupDateTimeChooserParameters()`
    and `showDateTimeChooser()` on the freed object, resulting in a 
use-after-free.

    Fix by holding a `RefPtr` to the input type on the stack prior to calling
    `didChangeValueFromControl()`.

    Test: 
fast/forms/date/date-editable-components/date-editable-components-change-type-on-input-event.html

    * 
LayoutTests/fast/forms/date/date-editable-components/date-editable-components-change-type-on-input-event-expected.txt:
 Added.
    * 
LayoutTests/fast/forms/date/date-editable-components/date-editable-components-change-type-on-input-event.html:
 Added.
    * Source/WebCore/html/BaseDateAndTimeInputType.cpp:
    (WebCore::BaseDateAndTimeInputType::setupDateTimeChooserParameters):

    Fix `setupDateTimeChooserParameters` to null-check element() instead of
    of asserting, since the element may be gone after the type change.

    * Source/WebCore/html/BaseDateAndTimeInputType.h:
    * Source/WebCore/html/shadow/DateTimeEditElement.cpp:
    (WebCore::DateTimeEditElement::defaultEventHandler):
    (WebCore::DateTimeEditElement::didBlurFromField):
    (WebCore::DateTimeEditElement::fieldValueChanged):
    (WebCore::DateTimeEditElement::isFieldOwnerDisabled const):
    (WebCore::DateTimeEditElement::isFieldOwnerReadOnly const):
    (WebCore::DateTimeEditElement::didFieldOwnerTransferFocusToPicker):
    (WebCore::DateTimeEditElement::didSuppressBlurDueToPickerFocusTransfer):
    (WebCore::DateTimeEditElement::localeIdentifier const):
    (WebCore::DateTimeEditElement::value const):
    (WebCore::DateTimeEditElement::placeholderValue const):
    * Source/WebCore/html/shadow/DateTimeEditElement.h:

    Change the base class of `DateTimeEditElementEditControlOwner` from
    `CanMakeWeakPtr<DateTimeEditElementEditControlOwner>` to
    `AbstractRefCountedAndCanMakeWeakPtr<DateTimeEditElementEditControlOwner>`,
    so that the object may be ref-counted.

    Remove the `IsDeprecatedWeakRefSmartPointerException` exception, since
    `DateTimeEditElementEditControlOwner` needs to be ref-counted to avoid
    use-after-free.

    Identifier: 305413.565@safari-7624-branch

Canonical link: https://commits.webkit.org/305877.684@webkitglib/2.52


Compare: https://github.com/WebKit/WebKit/compare/29ec063b6563...d859d3f7bc12

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

Reply via email to