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 502a8cbf8dc84955a99546cfabc3858b164e0e4e..70b7ea39796adf73b2ef5b4b1b9f06b42f2e0ee8 100644 |
--- a/media/audio/android/audio_manager_android.cc |
+++ b/media/audio/android/audio_manager_android.cc |
@@ -46,13 +46,12 @@ const int kDefaultOutputBufferSize = 2048; |
} // namespace |
-ScopedAudioManagerPtr CreateAudioManager( |
+std::unique_ptr<AudioManager> 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)); |
+ return base::MakeUnique<AudioManagerAndroid>( |
+ std::move(task_runner), std::move(worker_task_runner), audio_log_factory); |
} |
AudioManagerAndroid::AudioManagerAndroid( |
@@ -68,17 +67,7 @@ AudioManagerAndroid::AudioManagerAndroid( |
SetMaxOutputStreamsAllowed(kMaxOutputStreams); |
} |
-AudioManagerAndroid::~AudioManagerAndroid() { |
- DCHECK(GetTaskRunner()->BelongsToCurrentThread()); |
- Shutdown(); |
- |
- if (j_audio_manager_.is_null()) |
- return; |
- DVLOG(2) << "Destroying Java part of the audio manager"; |
- Java_AudioManagerAndroid_close(base::android::AttachCurrentThread(), |
- j_audio_manager_); |
- j_audio_manager_.Reset(); |
-} |
+AudioManagerAndroid::~AudioManagerAndroid() = default; |
void AudioManagerAndroid::InitializeIfNeeded() { |
GetTaskRunner()->PostTask( |
@@ -87,6 +76,17 @@ void AudioManagerAndroid::InitializeIfNeeded() { |
base::Unretained(this))); |
} |
+void AudioManagerAndroid::Shutdown() { |
+ AudioManagerBase::Shutdown(); |
+ |
+ if (!j_audio_manager_.is_null()) { |
+ DVLOG(2) << "Destroying Java part of the audio manager"; |
+ Java_AudioManagerAndroid_close(base::android::AttachCurrentThread(), |
+ j_audio_manager_); |
+ j_audio_manager_.Reset(); |
+ } |
+} |
+ |
bool AudioManagerAndroid::HasAudioOutputDevices() { |
return true; |
} |