Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4292cdb20b827b049f72728328019be61cfe7360
      
https://github.com/WebKit/WebKit/commit/4292cdb20b827b049f72728328019be61cfe7360
  Author: Philippe Normand <[email protected]>
  Date:   2025-12-12 (Fri, 12 Dec 2025)

  Changed paths:
    M 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp
    M 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
    M 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
    M 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp

  Log Message:
  -----------
  [GStreamer][WebRTC] webrtc/video-addTransceiver.html crashes
https://bugs.webkit.org/show_bug.cgi?id=303994

Reviewed by Xabier Rodriguez-Calvar.

The crash was happening when creating a transceiver without associated track 
and then calling
replaceTrack() on the sender, triggering a call to 
webkitMediaStreamSrcReplaceTrack() with a
non-mediastreamsrc GstElement. We now keep the fallback source separate from 
the outgoingSource
which is guaranteed to be a webkitmediastreamsrc element. An input-selector is 
used to select the
right source element, either the fallback source which is a videotestsrc or 
audiotestsrc or if a
track was associated, the outgoingSource is used.

* 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingAudioSourceGStreamer::RealtimeOutgoingAudioSourceGStreamer):
(WebCore::RealtimeOutgoingAudioSourceGStreamer::initialize):
(WebCore::RealtimeOutgoingAudioSourceGStreamer::outgoingSourcePad const):
* 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingMediaSourceGStreamer::initialize):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::replaceTrack):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::configurePacketizers):
* 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h:
* 
Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingVideoSourceGStreamer::RealtimeOutgoingVideoSourceGStreamer):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::initialize):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::outgoingSourcePad const):

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



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

Reply via email to