Fix deadlock around locking in AudioManager
Includes proof of concept tests, but the tests are not yet
highlighting the problem, due to its nondeterminism.
Bug: 20103143
Bug: 20108354
Change-Id: I8323a660c6cc4093888f4e608070709a828624e6
diff --git a/src/com/android/server/telecom/ContactsAsyncHelper.java b/src/com/android/server/telecom/ContactsAsyncHelper.java
index ef7ea4c..44fa654 100644
--- a/src/com/android/server/telecom/ContactsAsyncHelper.java
+++ b/src/com/android/server/telecom/ContactsAsyncHelper.java
@@ -127,12 +127,12 @@
}
}
}
- synchronized (mLock) {
- Log.d(this, "Notifying listener: " + args.listener.toString() +
- " image: " + args.displayPhotoUri + " completed");
- args.listener.onImageLoadComplete(msg.what, args.photo, args.photoIcon,
+
+ // Listener will synchronize as needed
+ Log.d(this, "Notifying listener: " + args.listener.toString() +
+ " image: " + args.displayPhotoUri + " completed");
+ args.listener.onImageLoadComplete(msg.what, args.photo, args.photoIcon,
args.cookie);
- }
break;
default:
break;