Index: media/audio/audio_manager.cc |
diff --git a/media/audio/audio_manager.cc b/media/audio/audio_manager.cc |
index 11af0ac8e1c0f9d219aad9061839c76da3617517..787750a4d33346c750b3f3cc1b266e9335731171 100644 |
--- a/media/audio/audio_manager.cc |
+++ b/media/audio/audio_manager.cc |
@@ -5,6 +5,8 @@ |
#include "media/audio/audio_manager.h" |
#include "base/at_exit.h" |
+#include "base/bind.h" |
+#include "base/bind_helpers.h" |
#include "base/logging.h" |
#include "base/message_loop.h" |
@@ -21,7 +23,12 @@ AudioManager::~AudioManager() { |
// static |
AudioManager* AudioManager::Create() { |
- return CreateAudioManager(); |
+ AudioManager* manager = CreateAudioManager(); |
+ if (manager) { |
+ manager->GetMessageLoop()->PostTask(FROM_HERE, base::Bind( |
+ &AudioManager::InitializeOnAudioThread, base::Unretained(manager))); |
+ } |
+ return manager; |
} |
} // namespace media |