| Index: content/renderer/media/webrtc_audio_device_impl.cc
|
| diff --git a/content/renderer/media/webrtc_audio_device_impl.cc b/content/renderer/media/webrtc_audio_device_impl.cc
|
| index ae37d2074b2f1159605f9cf97197f40f976b5e6b..0a65aff2aa00cd648c75b209f69b68e865ba4cd7 100644
|
| --- a/content/renderer/media/webrtc_audio_device_impl.cc
|
| +++ b/content/renderer/media/webrtc_audio_device_impl.cc
|
| @@ -524,7 +524,14 @@ bool WebRtcAudioDeviceImpl::GetAuthorizedDeviceInfoForAudioRenderer(
|
| void WebRtcAudioDeviceImpl::EnableAecDump(base::File aec_dump_file) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| DCHECK(aec_dump_file.IsValid());
|
| - DCHECK(!aec_dump_file_.IsValid());
|
| +
|
| + // Close the previous AEC dump file description if it has not been consumed.
|
| + // This can happen if no getUserMedia has been made yet.
|
| + // TODO(xians): DCHECK(!aec_dump_file_.IsValid()) after the browser
|
| + // guarantees it won't call EnableAecDump() more than once in a row.
|
| + if (aec_dump_file_.IsValid())
|
| + aec_dump_file_.Close();
|
| +
|
| aec_dump_file_ = aec_dump_file.Pass();
|
| MaybeStartAecDump();
|
| }
|
|
|