From c0b04948601c78f7013ad32d1a9b7276f4c39ac1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Terelius?= Date: Mon, 3 Oct 2022 12:56:48 +0200 Subject: [PATCH] Fix loss of precision in accumulation of RTT in GoogCC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: webrtc:14513 Change-Id: Iefa4cf906ded02b224b970cabeea5b8c4ed122de Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/277760 Commit-Queue: Björn Terelius Reviewed-by: Per Kjellander Cr-Commit-Position: refs/heads/main@{#38273} --- .../congestion_controller/goog_cc/goog_cc_network_control.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc index c75afc956c..fcb77faacd 100644 --- a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc +++ b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc @@ -440,8 +440,9 @@ NetworkControlUpdate GoogCcNetworkController::OnTransportPacketsFeedback( } if (packet_feedback_only_) { if (!feedback_max_rtts_.empty()) { - int64_t sum_rtt_ms = std::accumulate(feedback_max_rtts_.begin(), - feedback_max_rtts_.end(), 0); + int64_t sum_rtt_ms = + std::accumulate(feedback_max_rtts_.begin(), feedback_max_rtts_.end(), + static_cast(0)); int64_t mean_rtt_ms = sum_rtt_ms / feedback_max_rtts_.size(); if (delay_based_bwe_) delay_based_bwe_->OnRttUpdate(TimeDelta::Millis(mean_rtt_ms));