Fix binder equality check
Forgot to call .asBinder() before checking binders for equality. This fixes a memory leak caused by the system holding on to binders. bug:18049316 Change-Id: I43a9f4163b28cf1a77e59c3e7bade32bd2ef1c1a
This commit is contained in:
@@ -427,7 +427,7 @@ public class MediaSessionService extends SystemService implements Monitor {
|
||||
|
||||
private int findIndexOfSessionsListenerLocked(IActiveSessionsListener listener) {
|
||||
for (int i = mSessionsListeners.size() - 1; i >= 0; i--) {
|
||||
if (mSessionsListeners.get(i).mListener == listener) {
|
||||
if (mSessionsListeners.get(i).mListener.asBinder() == listener.asBinder()) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
@@ -764,6 +764,7 @@ public class MediaSessionService extends SystemService implements Monitor {
|
||||
pw.println();
|
||||
|
||||
synchronized (mLock) {
|
||||
pw.println(mSessionsListeners.size() + " sessions listeners.");
|
||||
int count = mAllSessions.size();
|
||||
pw.println(count + " Sessions:");
|
||||
for (int i = 0; i < count; i++) {
|
||||
|
||||
Reference in New Issue
Block a user