Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7c9125971d94c50643fee08e076840fc700806f7
      
https://github.com/WebKit/WebKit/commit/7c9125971d94c50643fee08e076840fc700806f7
  Author: Eric Carlson <[email protected]>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M 
LayoutTests/fast/mediastream/configurationchange-defer-and-abort-expected.txt
    A 
LayoutTests/fast/mediastream/mediastreamtrack-configurationchange-while-muted-expected.txt
    A 
LayoutTests/fast/mediastream/mediastreamtrack-configurationchange-while-muted.html
    M Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
    M Source/WebCore/Modules/mediastream/MediaStreamTrack.h

  Log Message:
  -----------
  `configurationchange` event is dropped when MediaStream track configuration 
changes while track is muted
https://bugs.webkit.org/show_bug.cgi?id=318222
rdar://180728609

Reviewed by Youenn Fablet.

Per the MediaCapture Extensions specification, when a source-side
configuration change occurs while a MediaStreamTrack is muted, the
configurationchange event must be deferred until the track is no longer
muted (or the track ends). WebKit instead queued the task immediately
and aborted it on dispatch when the track was still muted, dropping the
event entirely. After unmute, no event ever fired for the missed change.

Record that a configurationchange was suppressed while muted, and flush
it from the unmute path after the unmute event is dispatched. Multiple
notifications while muted coalesce into a single event on unmute.

Test: fast/mediastream/mediastreamtrack-configurationchange-while-muted.html

* LayoutTests/fast/mediastream/configurationchange-defer-and-abort-expected.txt:
* 
LayoutTests/fast/mediastream/mediastreamtrack-configurationchange-while-muted-expected.txt:
 Added.
* 
LayoutTests/fast/mediastream/mediastreamtrack-configurationchange-while-muted.html:
 Added.
* Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::trackMutedChanged):
(WebCore::MediaStreamTrack::trackConfigurationChanged):
* Source/WebCore/Modules/mediastream/MediaStreamTrack.h:

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



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

Reply via email to