diff options
| author | 2021-11-18 04:18:22 +0000 | |
|---|---|---|
| committer | 2021-11-18 04:20:08 +0000 | |
| commit | 352bc74d68666fb53c93401cd556bcff6d0990d9 (patch) | |
| tree | 143ef9602e15b7718d4763137c51064c5e285581 | |
| parent | e25bce2d631fa4602edca142aa2602e37d6d63db (diff) | |
Fix deadlock in MediaRouterService
The deadlock was introduced by the previously merged CL
"2942e4b: MediaRouter: Route setBluetoothA2dpOn()
via MediaRouterService".
Bug: 181962322, Bug: 206160544
Change-Id: I3936b8345e8df20a51400a9083d46872e6801568
Test: Builds successfully
| -rw-r--r-- | services/core/java/com/android/server/media/MediaRouterService.java | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/media/MediaRouterService.java b/services/core/java/com/android/server/media/MediaRouterService.java index 9be618cb7add..1405dc45abbd 100644 --- a/services/core/java/com/android/server/media/MediaRouterService.java +++ b/services/core/java/com/android/server/media/MediaRouterService.java @@ -100,6 +100,7 @@ public final class MediaRouterService extends IMediaRouterService.Stub // State guarded by mLock. private final Object mLock = new Object(); + private final SparseArray<UserRecord> mUserRecords = new SparseArray<>(); private final ArrayMap<IBinder, ClientRecord> mAllClientRecords = new ArrayMap<>(); private int mCurrentUserId = -1; @@ -345,9 +346,7 @@ public final class MediaRouterService extends IMediaRouterService.Stub final long token = Binder.clearCallingIdentity(); try { - synchronized (mLock) { - mAudioService.setBluetoothA2dpOn(on); - } + mAudioService.setBluetoothA2dpOn(on); } catch (RemoteException ex) { Slog.w(TAG, "RemoteException while calling setBluetoothA2dpOn. on=" + on); } finally { |