diff options
| author | 2024-11-21 11:17:18 +0100 | |
|---|---|---|
| committer | 2025-01-27 08:32:47 -0800 | |
| commit | c3c81f39fde3db7f58aca84daca920dabe29a771 (patch) | |
| tree | 70bd399c838d2c3809a0c6eee8888615c14835bf | |
| parent | 43b304a20091b5f4970fc8148c283883116a7fea (diff) | |
Deregistering mixes before register mixes in connectMixes
When AudioFlinger binder dies and AudioService receives
onError/onAudioServerDied callback but AudioPolicy service is alive,
we get INVALID_OPERATION error because mixes was already registered.
This causes calling release on AudioPolicyProxy.
Test: Manual
Bug: 380092408
Change-Id: I4e5c6e3d3aace03f02f312fda26e5696ac090d04
| -rw-r--r-- | services/core/java/com/android/server/audio/AudioService.java | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index b09a192990c8..ca8dadde3bea 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -14153,6 +14153,7 @@ public class AudioService extends IAudioService.Stub for (AudioMix mix : mMixes) { mix.setVirtualDeviceId(mAttributionSource.getDeviceId()); } + mAudioSystem.registerPolicyMixes(mMixes, false); return mAudioSystem.registerPolicyMixes(mMixes, true); } finally { Binder.restoreCallingIdentity(identity); |