Chromium Code Reviews| Index: media/audio/android/audio_manager_android.cc |
| diff --git a/media/audio/android/audio_manager_android.cc b/media/audio/android/audio_manager_android.cc |
| index 96a7c78c29c055d099f5ee985a8a591bfe44c3a8..3ad83f7a60d6b109b3969f869ecac00f23eba2fa 100644 |
| --- a/media/audio/android/audio_manager_android.cc |
| +++ b/media/audio/android/audio_manager_android.cc |
| @@ -45,12 +45,22 @@ const int kDefaultOutputBufferSize = 2048; |
| } // namespace |
| -AudioManager* CreateAudioManager(AudioLogFactory* audio_log_factory) { |
| - return new AudioManagerAndroid(audio_log_factory); |
| -} |
| - |
| -AudioManagerAndroid::AudioManagerAndroid(AudioLogFactory* audio_log_factory) |
| - : AudioManagerBase(audio_log_factory), |
| +ScopedAudioManagerPtr CreateAudioManager( |
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
| + scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner, |
| + AudioLogFactory* audio_log_factory) { |
| + return ScopedAudioManagerPtr(new AudioManagerAndroid( |
| + std::move(task_runner), std::move(worker_task_runner), |
| + audio_log_factory)); |
| +} |
| + |
| +AudioManagerAndroid::AudioManagerAndroid( |
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
| + scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner, |
| + AudioLogFactory* audio_log_factory) |
| + : AudioManagerBase(std::move(task_runner), |
| + std::move(worker_task_runner), |
| + audio_log_factory), |
| communication_mode_is_on_(false), |
| output_volume_override_set_(false), |
| output_volume_override_(0) { |
| @@ -68,11 +78,10 @@ AudioManagerAndroid::AudioManagerAndroid(AudioLogFactory* audio_log_factory) |
| } |
| AudioManagerAndroid::~AudioManagerAndroid() { |
| - // It's safe to post a task here since Shutdown() will wait for all tasks to |
| - // complete before returning. |
| - GetTaskRunner()->PostTask(FROM_HERE, base::Bind( |
| - &AudioManagerAndroid::ShutdownOnAudioThread, base::Unretained(this))); |
| + DCHECK(GetTaskRunner()->BelongsToCurrentThread()); |
| + |
| Shutdown(); |
| + ShutdownOnAudioThread(); |
|
DaleCurtis
2016/04/05 21:55:36
Why the reordering?
alokp
2016/04/05 23:57:39
You are right about this one. I read the code wron
|
| } |
| bool AudioManagerAndroid::HasAudioOutputDevices() { |