From 7dbb701076f33e459cd3bc89a49bfec43b359545 Mon Sep 17 00:00:00 2001 From: Anders Carlsson Date: Mon, 5 Mar 2018 10:26:03 +0100 Subject: [PATCH] Fix crash when setting duplicate receive codecs. Instead of crashing, log a warning. Bug: chromium:810173 Change-Id: I7e43889fdab429fcb231657f5770b0ff26f34a8f Reviewed-on: https://webrtc-review.googlesource.com/59020 Reviewed-by: Magnus Jedvert Commit-Queue: Anders Carlsson Cr-Commit-Position: refs/heads/master@{#22322} --- media/engine/webrtcvideoengine.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/media/engine/webrtcvideoengine.cc b/media/engine/webrtcvideoengine.cc index 84916993b1..d0516eedaf 100644 --- a/media/engine/webrtcvideoengine.cc +++ b/media/engine/webrtcvideoengine.cc @@ -2211,6 +2211,13 @@ void WebRtcVideoChannel::WebRtcVideoReceiveStream::ConfigureCodecs( recv_codec.codec.params); std::unique_ptr new_decoder; + if (allocated_decoders_.count(video_format) > 0) { + RTC_LOG(LS_WARNING) + << "VideoReceiveStream configured with duplicate codecs: " + << video_format.name; + continue; + } + auto it = old_decoders->find(video_format); if (it != old_decoders->end()) { new_decoder = std::move(it->second);