| Index: media/audio/linux/audio_manager_linux.cc
|
| diff --git a/media/audio/linux/audio_manager_linux.cc b/media/audio/linux/audio_manager_linux.cc
|
| index fdf80441bf37473946463082121643377138669d..e6c34e51c442bc3601d47e94fce2fa5d93f1c373 100644
|
| --- a/media/audio/linux/audio_manager_linux.cc
|
| +++ b/media/audio/linux/audio_manager_linux.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include "base/command_line.h"
|
| #include "base/logging.h"
|
| +#include "media/audio/audio_output_dispatcher.h"
|
| #include "media/audio/fake_audio_input_stream.h"
|
| #include "media/audio/fake_audio_output_stream.h"
|
| #include "media/audio/linux/alsa_input.h"
|
| @@ -94,6 +95,11 @@ AudioManagerLinux::~AudioManagerLinux() {
|
| // This way we make sure activities of the audio streams are all stopped
|
| // before we destroy them.
|
| audio_thread_.Stop();
|
| +
|
| + // Free output dispatchers first, so that they closes all streams that
|
| + // are still open.
|
| + output_dispatchers_.clear();
|
| +
|
| active_streams_.clear();
|
| }
|
|
|
|
|