Skip to content

Commit

Permalink
Cherry-pick b273da8. rdar://problem/109364379
Browse files Browse the repository at this point in the history
    [WebRTC] oob in RTCStatsCollector::ProduceTransportStats_n
    https://bugs.webkit.org/show_bug.cgi?id=256516
    rdar://109084778

    Reviewed by Eric Carlson.

    Cherry-pick libwebrtc 124d7c3fe5bdc79a355c9df02d07f25331631a68, which makes sure to check that the iterator is valid before using it.

    * Source/ThirdParty/libwebrtc/Source/webrtc/pc/rtc_stats_collector.cc:

    Canonical link: https://commits.webkit.org/259548.747@safari-7615-branch

Identifier: 245886.886@safari-7613.4.1.0-branch
  • Loading branch information
youennf authored and MyahCobbs committed Jun 22, 2023
1 parent 1eedcf8 commit 94269f3
Showing 1 changed file with 10 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2001,16 +2001,17 @@ void RTCStatsCollector::ProduceTransportStats_n(
// exist.
const auto& certificate_stats_it =
transport_cert_stats.find(transport_name);
std::string local_certificate_id, remote_certificate_id;
RTC_DCHECK(certificate_stats_it != transport_cert_stats.cend());
std::string local_certificate_id;
if (certificate_stats_it->second.local) {
local_certificate_id = RTCCertificateIDFromFingerprint(
certificate_stats_it->second.local->fingerprint);
}
std::string remote_certificate_id;
if (certificate_stats_it->second.remote) {
remote_certificate_id = RTCCertificateIDFromFingerprint(
certificate_stats_it->second.remote->fingerprint);
if (certificate_stats_it != transport_cert_stats.cend()) {
if (certificate_stats_it->second.local) {
local_certificate_id = RTCCertificateIDFromFingerprint(
certificate_stats_it->second.local->fingerprint);
}
if (certificate_stats_it->second.remote) {
remote_certificate_id = RTCCertificateIDFromFingerprint(
certificate_stats_it->second.remote->fingerprint);
}
}

// There is one transport stats for each channel.
Expand Down

0 comments on commit 94269f3

Please sign in to comment.