[webkit-changes] [WebKit/WebKit] 91dc14: [GStreamer][LibWebRTC] Conflict between two GStrea...

Olivier Blin noreply at github.com
Fri Feb 23 05:40:10 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 91dc14fd908d68d00a582840163c1342f304efb3
      https://github.com/WebKit/WebKit/commit/91dc14fd908d68d00a582840163c1342f304efb3
  Author: Olivier Blin <olivier.blin at softathome.com>
  Date:   2024-02-23 (Fri, 23 Feb 2024)

  Changed paths:
    M Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp

  Log Message:
  -----------
  [GStreamer][LibWebRTC] Conflict between two GStreamerVideoDecoder classes can lead to crash
https://bugs.webkit.org/show_bug.cgi?id=269915

Reviewed by Philippe Normand.

In the GStreamer ports, there are two different implementations of the
WebCore::GStreamerVideoDecoder class:
- one for WebRTC in Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp
- one for WebCodecs in Source/WebCore/platform/graphics/gstreamer/VideoDecoderGStreamer.cpp

This can lead to a crash in WebRTC usage, since the
WebCore::GStreamerVideoDecoder destructor from the WebCodecs class can
be mistakenly used instead of the one from the WebRTC class.

Rename the WebRTC class as GStreamerWebRTCVideoDecoder.

* Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp:
(WebCore::GStreamerWebRTCVideoDecoder::GStreamerWebRTCVideoDecoder):
(WebCore::GStreamerVideoDecoder::GStreamerVideoDecoder): Deleted.
(WebCore::GStreamerVideoDecoder::decodebinPadAddedCb): Deleted.
(WebCore::GStreamerVideoDecoder::pipeline): Deleted.
(WebCore::GStreamerVideoDecoder::makeElement): Deleted.
(WebCore::GStreamerVideoDecoder::handleError): Deleted.
(WebCore::GStreamerVideoDecoder::CreateFilter): Deleted.
(WebCore::GStreamerVideoDecoder::pullSample): Deleted.
(WebCore::GStreamerVideoDecoder::GetCapsForFrame): Deleted.
(WebCore::GStreamerVideoDecoder::AddDecoderIfSupported): Deleted.
(WebCore::GStreamerVideoDecoder::ConfigureSupportedDecoder): Deleted.
(WebCore::GStreamerVideoDecoder::GstDecoderFactory): Deleted.
(WebCore::GStreamerVideoDecoder::HasGstDecoder): Deleted.

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



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


More information about the webkit-changes mailing list