tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit f2ef102ef44b071e01fca36b22b70d414a7f06f0
parent add8be8cdc2d09c33c4d5175ea71eb4e9ff2dee5
Author: Dan Baker <dbaker@mozilla.com>
Date:   Mon, 27 Oct 2025 14:42:00 -0600

Bug 1995393 - Vendor libwebrtc from 0deb9d6d33

Essentially a no-op since we're going to see this change
reverted when we vendor in 0e582e5b50.

Upstream commit: https://webrtc.googlesource.com/src/+/0deb9d6d33111cbf2a5b248434870dd9d8b982fc
    Make WebRTC-RTP-Lifetime enabled-by-default.

    Ships spec-compliant RTP stats lifetimes as per Intent to Ship:
    https://groups.google.com/a/chromium.org/g/blink-dev/c/GYqPzIUUZCQ

    The TL;DR change is:
    1. outbound-rtp creation is delayed until O/A has completed, but can
       exist prior to sending any packets.
    2. inbound-rtp creation is delayed until first packet has been received,
       whether or not O/A has completed (allowing early media use case).

    The flag is kept as a kill-switch, to be removed after this has reached
    Chrome stable.

    Bug: chromium:406585888
    Change-Id: Ibb42d77eb156ba14d2f50e6521d51615551fe489
    Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/406620
    Reviewed-by: Harald Alvestrand <hta@webrtc.org>
    Commit-Queue: Henrik Boström <hbos@webrtc.org>
    Cr-Commit-Position: refs/heads/main@{#45468}

Diffstat:
Mthird_party/libwebrtc/README.mozilla.last-vendor | 4++--
Athird_party/libwebrtc/moz-patch-stack/0e582e5b50.no-op-cherry-pick-msg | 1+
Athird_party/libwebrtc/moz-patch-stack/p0001.patch | 86+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 89 insertions(+), 2 deletions(-)

diff --git a/third_party/libwebrtc/README.mozilla.last-vendor b/third_party/libwebrtc/README.mozilla.last-vendor @@ -1,4 +1,4 @@ # ./mach python dom/media/webrtc/third_party_build/vendor-libwebrtc.py --from-local /Users/danielbaker/elm/.moz-fast-forward/moz-libwebrtc --commit mozpatches libwebrtc -libwebrtc updated from /Users/danielbaker/elm/.moz-fast-forward/moz-libwebrtc commit mozpatches on 2025-10-27T20:39:44.829483+00:00. +libwebrtc updated from /Users/danielbaker/elm/.moz-fast-forward/moz-libwebrtc commit mozpatches on 2025-10-27T20:41:49.543935+00:00. # base of lastest vendoring -f4370b1ca4 +0deb9d6d33 diff --git a/third_party/libwebrtc/moz-patch-stack/0e582e5b50.no-op-cherry-pick-msg b/third_party/libwebrtc/moz-patch-stack/0e582e5b50.no-op-cherry-pick-msg @@ -0,0 +1 @@ +We already cherry-picked this when we vendored 0deb9d6d33. diff --git a/third_party/libwebrtc/moz-patch-stack/p0001.patch b/third_party/libwebrtc/moz-patch-stack/p0001.patch @@ -0,0 +1,86 @@ +From: Daniel Baker <dbaker@mozilla.com> +Date: Mon, 27 Oct 2025 14:41:18 -0600 +Subject: (tmp-cherry-pick) Revert "Make WebRTC-RTP-Lifetime + enabled-by-default." (0e582e5b50) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This reverts commit 0deb9d6d33111cbf2a5b248434870dd9d8b982fc. + +Reason for revert: Breaks internal test that assumes RTP stats exist +prior to reception + +Bug: chromium:406585888 +Original change's description: +> Make WebRTC-RTP-Lifetime enabled-by-default. +> +> Ships spec-compliant RTP stats lifetimes as per Intent to Ship: +> https://groups.google.com/a/chromium.org/g/blink-dev/c/GYqPzIUUZCQ +> +> The TL;DR change is: +> 1. outbound-rtp creation is delayed until O/A has completed, but can +> exist prior to sending any packets. +> 2. inbound-rtp creation is delayed until first packet has been received, +> whether or not O/A has completed (allowing early media use case). +> +> The flag is kept as a kill-switch, to be removed after this has reached +> Chrome stable. +> +> Bug: chromium:406585888 +> Change-Id: Ibb42d77eb156ba14d2f50e6521d51615551fe489 +> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/406620 +> Reviewed-by: Harald Alvestrand <hta@webrtc.org> +> Commit-Queue: Henrik Boström <hbos@webrtc.org> +> Cr-Commit-Position: refs/heads/main@{#45468} + +Bug: chromium:406585888 +No-Presubmit: true +No-Tree-Checks: true +No-Try: true +Change-Id: I0dad2172691d78945b82a7796e51a42cace85d33 +Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/406761 +Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> +Auto-Submit: Henrik Boström <hbos@webrtc.org> +Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> +Cr-Commit-Position: refs/heads/main@{#45470} +--- + pc/rtc_stats_collector.cc | 2 +- + pc/rtc_stats_integrationtest.cc | 9 ++++++--- + 2 files changed, 7 insertions(+), 4 deletions(-) + +diff --git a/pc/rtc_stats_collector.cc b/pc/rtc_stats_collector.cc +index c284ba84f6..f917f9c957 100644 +--- a/pc/rtc_stats_collector.cc ++++ b/pc/rtc_stats_collector.cc +@@ -1718,7 +1718,7 @@ void RTCStatsCollector::ProduceRTPStreamStats_n( + RTC_DCHECK_RUN_ON(network_thread_); + Thread::ScopedDisallowBlockingCalls no_blocking_calls; + +- bool spec_lifetime = !env_.field_trials().IsDisabled("WebRTC-RTP-Lifetime"); ++ bool spec_lifetime = env_.field_trials().IsEnabled("WebRTC-RTP-Lifetime"); + for (const RtpTransceiverStatsInfo& stats : transceiver_stats_infos) { + if (stats.media_type == MediaType::AUDIO) { + ProduceAudioRTPStreamStats_n(timestamp, stats, spec_lifetime, report); +diff --git a/pc/rtc_stats_integrationtest.cc b/pc/rtc_stats_integrationtest.cc +index 41759f5e9c..8833947ec7 100644 +--- a/pc/rtc_stats_integrationtest.cc ++++ b/pc/rtc_stats_integrationtest.cc +@@ -1242,11 +1242,14 @@ TEST_F(RTCStatsIntegrationTest, ExperimentalPsnrStats) { + class RTCStatsRtpLifetimeTest : public RTCStatsIntegrationTest { + public: + RTCStatsRtpLifetimeTest() : RTCStatsIntegrationTest() { +- // Field trial "WebRTC-RTP-Lifetime" is enabled-by-default. ++ FieldTrials field_trials = ++ CreateTestFieldTrials("WebRTC-RTP-Lifetime/Enabled/"); + EXPECT_TRUE(caller_->CreatePc({}, CreateBuiltinAudioEncoderFactory(), +- CreateBuiltinAudioDecoderFactory())); ++ CreateBuiltinAudioDecoderFactory(), ++ std::make_unique<FieldTrials>(field_trials))); + EXPECT_TRUE(callee_->CreatePc({}, CreateBuiltinAudioEncoderFactory(), +- CreateBuiltinAudioDecoderFactory())); ++ CreateBuiltinAudioDecoderFactory(), ++ std::make_unique<FieldTrials>(field_trials))); + } + }; +