[webkit-changes] [WebKit/WebKit] 150ac4: REGRESSION(279854 at main): [GStreamer][WebRTC] webrt...

Carlos Bentzen noreply at github.com
Tue Jun 18 12:37:55 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 150ac45afe34c2f57289bb7d2aea319bdee92ddc
      https://github.com/WebKit/WebKit/commit/150ac45afe34c2f57289bb7d2aea319bdee92ddc
  Author: Carlos Bentzen <cadubentzen at igalia.com>
  Date:   2024-06-18 (Tue, 18 Jun 2024)

  Changed paths:
    M Source/WebCore/Modules/mediastream/RTCStatsReport.h
    M Source/WebCore/Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp

  Log Message:
  -----------
  REGRESSION(279854 at main): [GStreamer][WebRTC] webrtc/video-stats.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=275570

Reviewed by Philippe Normand.

With 279854 at main, the default constructors for Stats structs were
removed if USE(LIBWEBRTC). However, without USE(LIBWEBRTC) we still have
the implicit default constructors declared, which don't set the type
field as before, so it is left uninitialized and causes a crash in
webrtc/video-stats.html.

Fix the issue by implementing the counterpart to 279854 at main in
GStreamerStatsCollector.cpp and add corresponding constructors in
RTCStatsReport classes. Additionally, add static_assert's to ensure
there are no default constructors at compile time.

* Source/WebCore/Modules/mediastream/RTCStatsReport.h:
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp:
(WebCore::RTCStatsReport::Stats::Stats):
(WebCore::RTCStatsReport::RtpStreamStats::RtpStreamStats):
(WebCore::RTCStatsReport::SentRtpStreamStats::SentRtpStreamStats):
(WebCore::RTCStatsReport::CodecStats::CodecStats):
(WebCore::RTCStatsReport::ReceivedRtpStreamStats::ReceivedRtpStreamStats):
(WebCore::RTCStatsReport::RemoteInboundRtpStreamStats::RemoteInboundRtpStreamStats):
(WebCore::RTCStatsReport::RemoteOutboundRtpStreamStats::RemoteOutboundRtpStreamStats):
(WebCore::RTCStatsReport::InboundRtpStreamStats::InboundRtpStreamStats):
(WebCore::RTCStatsReport::OutboundRtpStreamStats::OutboundRtpStreamStats):
(WebCore::RTCStatsReport::PeerConnectionStats::PeerConnectionStats):
(WebCore::RTCStatsReport::TransportStats::TransportStats):
(WebCore::RTCStatsReport::IceCandidateStats::IceCandidateStats):
(WebCore::RTCStatsReport::IceCandidatePairStats::IceCandidatePairStats):
(WebCore::fillReportCallback):
(WebCore::fillRTCStats): Deleted.
(WebCore::fillRTCRTPStreamStats): Deleted.
(WebCore::fillSentRTPStreamStats): Deleted.
(WebCore::fillRTCCodecStats): Deleted.
(WebCore::fillReceivedRTPStreamStats): Deleted.
(WebCore::fillRemoteInboundRTPStreamStats): Deleted.
(WebCore::fillRemoteOutboundRTPStreamStats): Deleted.
(WebCore::fillInboundRTPStreamStats): Deleted.
(WebCore::fillOutboundRTPStreamStats): Deleted.
(WebCore::fillRTCPeerConnectionStats): Deleted.
(WebCore::fillRTCTransportStats): Deleted.
(WebCore::fillRTCCandidateStats): Deleted.
(WebCore::fillRTCCandidatePairStats): Deleted.

Canonical link: https://commits.webkit.org/280132@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