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..73f4ace99d359708682604a64511922b579b6153 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,10 @@ 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, closing all remaining open streams. |
+ output_dispatchers_.clear(); |
+ |
active_streams_.clear(); |
} |