diff --git a/media/java/android/media/AudioPortEventHandler.java b/media/java/android/media/AudioPortEventHandler.java index 14249cbe89454..8e8dfaf24b9a3 100644 --- a/media/java/android/media/AudioPortEventHandler.java +++ b/media/java/android/media/AudioPortEventHandler.java @@ -78,7 +78,8 @@ class AudioPortEventHandler { listeners.add((AudioManager.OnAudioPortUpdateListener)msg.obj); } } else { - listeners = mListeners; + listeners = (ArrayList) + mListeners.clone(); } } // reset audio port cache if the event corresponds to a change coming diff --git a/media/java/android/media/audiopolicy/AudioVolumeGroupChangeHandler.java b/media/java/android/media/audiopolicy/AudioVolumeGroupChangeHandler.java index adf4d3dcfa098..022cfeeb4e43e 100644 --- a/media/java/android/media/audiopolicy/AudioVolumeGroupChangeHandler.java +++ b/media/java/android/media/audiopolicy/AudioVolumeGroupChangeHandler.java @@ -80,7 +80,8 @@ public class AudioVolumeGroupChangeHandler { (AudioManager.VolumeGroupCallback) msg.obj); } } else { - listeners = mListeners; + listeners = (ArrayList) + mListeners.clone(); } } if (listeners.isEmpty()) {