| Index: content/renderer/media/audio_renderer_sink_cache_impl.cc
|
| diff --git a/content/renderer/media/audio_renderer_sink_cache_impl.cc b/content/renderer/media/audio_renderer_sink_cache_impl.cc
|
| index 7c495eeec54028eaa55e49adddf7fb15ffd96a8b..26b2ba5a31b4e53a3a78ef4858910b12d2623398 100644
|
| --- a/content/renderer/media/audio_renderer_sink_cache_impl.cc
|
| +++ b/content/renderer/media/audio_renderer_sink_cache_impl.cc
|
| @@ -68,7 +68,12 @@ AudioRendererSinkCacheImpl::AudioRendererSinkCacheImpl(
|
| }
|
|
|
| AudioRendererSinkCacheImpl::~AudioRendererSinkCacheImpl() {
|
| - // We just release all the cached sinks here.
|
| + DCHECK(task_runner_->BelongsToCurrentThread());
|
| + // We just release all the cached sinks here. Stop them first.
|
| + // We can stop all the sinks, no matter they are used or not, since everything
|
| + // is being destroyed anyways.
|
| + for (auto& entry : cache_)
|
| + entry.sink->Stop();
|
| }
|
|
|
| media::OutputDeviceInfo AudioRendererSinkCacheImpl::GetSinkInfo(
|
|
|