From 9e1b992f74470aecfeb216e26b455982ddc4a6d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Bostr=C3=B6m?= Date: Fri, 4 Dec 2015 16:34:11 +0100 Subject: [PATCH] Clear old decoders after recreating the receiver. Prevents UAF when switching decoder capabilities and the previously-supported decoder is currently being received on. BUG=chromium:565967 R=stefan@webrtc.org Review URL: https://codereview.webrtc.org/1490233010 . Cr-Commit-Position: refs/heads/master@{#10898} --- talk/media/webrtc/webrtcvideoengine2.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/talk/media/webrtc/webrtcvideoengine2.cc b/talk/media/webrtc/webrtcvideoengine2.cc index 308b68b457..844b118527 100644 --- a/talk/media/webrtc/webrtcvideoengine2.cc +++ b/talk/media/webrtc/webrtcvideoengine2.cc @@ -2376,10 +2376,10 @@ void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetRecvCodecs( config_.rtp.nack.rtp_history_ms = HasNack(recv_codecs.begin()->codec) ? kNackHistoryMs : 0; - ClearDecoders(&old_decoders); LOG(LS_INFO) << "RecreateWebRtcStream (recv) because of SetRecvCodecs: " << CodecSettingsVectorToString(recv_codecs); RecreateWebRtcStream(); + ClearDecoders(&old_decoders); } void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetLocalSsrc(