summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/moz-patch-stack/0005.patch
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /third_party/libwebrtc/moz-patch-stack/0005.patch
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/libwebrtc/moz-patch-stack/0005.patch')
-rw-r--r--third_party/libwebrtc/moz-patch-stack/0005.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/third_party/libwebrtc/moz-patch-stack/0005.patch b/third_party/libwebrtc/moz-patch-stack/0005.patch
new file mode 100644
index 0000000000..a7b1f9b1f5
--- /dev/null
+++ b/third_party/libwebrtc/moz-patch-stack/0005.patch
@@ -0,0 +1,49 @@
+From: Dan Minor <dminor@mozilla.com>
+Date: Tue, 27 Mar 2018 15:43:00 -0400
+Subject: Bug 1376873 - Disable Mid support in RtpDemuxer; r=mjf
+
+The only use of Mid in the current webrtc.org code is in the unit tests.
+RtpStreamReceiverController only allows adding sinks using SSRCs. Because
+of this, we'll end up dropping packets in the RtpDemuxer with the current
+code as none of our Mids will be recognized.
+
+Tip of webrtc.org fully supports using Mids, so we'll be able to enable this
+code again after the next update.
+
+Differential Revision: https://phabricator.services.mozilla.com/D7442
+Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/b3ba8452e77105c72f6ddbc49cbe5a53dbea1507
+---
+ call/rtp_demuxer.cc | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/call/rtp_demuxer.cc b/call/rtp_demuxer.cc
+index 0b74f2ac0a..5c53f48144 100644
+--- a/call/rtp_demuxer.cc
++++ b/call/rtp_demuxer.cc
+@@ -272,13 +272,17 @@ RtpPacketSinkInterface* RtpDemuxer::ResolveSink(
+ // RSID and RRID are routed to the same sinks. If an RSID is specified on a
+ // repair packet, it should be ignored and the RRID should be used.
+ std::string packet_mid, packet_rsid;
+- bool has_mid = use_mid_ && packet.GetExtension<RtpMid>(&packet_mid);
++ //bool has_mid = use_mid_ && packet.GetExtension<RtpMid>(&packet_mid);
+ bool has_rsid = packet.GetExtension<RepairedRtpStreamId>(&packet_rsid);
+ if (!has_rsid) {
+ has_rsid = packet.GetExtension<RtpStreamId>(&packet_rsid);
+ }
+ uint32_t ssrc = packet.Ssrc();
+
++ // Mid support is half-baked in branch 64. RtpStreamReceiverController only
++ // supports adding sinks by ssrc, so our mids will never show up in
++ // known_mids_, causing us to drop packets here.
++#if 0
+ // The BUNDLE spec says to drop any packets with unknown MIDs, even if the
+ // SSRC is known/latched.
+ if (has_mid && known_mids_.find(packet_mid) == known_mids_.end()) {
+@@ -352,6 +356,7 @@ RtpPacketSinkInterface* RtpDemuxer::ResolveSink(
+ }
+ }
+
++#endif
+ // We trust signaled SSRC more than payload type which is likely to conflict
+ // between streams.
+ const auto ssrc_sink_it = sink_by_ssrc_.find(ssrc);