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