From 118f0b39381c9f5a3eb9f1b72ff211eddeb9eae8 Mon Sep 17 00:00:00 2001 From: gyumin Date: Tue, 21 Apr 2020 05:09:38 +0100 Subject: [PATCH] Prevent StreamVolumeManager from being released twice PiperOrigin-RevId: 307534335 --- .../com/google/android/exoplayer2/StreamVolumeManager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java b/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java index 59ab3f1616..66216de861 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java @@ -53,6 +53,7 @@ import com.google.android.exoplayer2.util.Util; @C.StreamType private int streamType; private int volume; private boolean muted; + private boolean released; /** Creates a manager. */ public StreamVolumeManager(Context context, Handler eventHandler, Listener listener) { @@ -158,7 +159,11 @@ import com.google.android.exoplayer2.util.Util; /** Releases the manager. It must be called when the manager is no longer required. */ public void release() { + if (released) { + return; + } applicationContext.unregisterReceiver(receiver); + released = true; } private void updateVolumeAndNotifyIfChanged() {