From d64fe0f53c8f77a32cb7745a0a1c4309f9d0ba8d Mon Sep 17 00:00:00 2001 From: Niklas Brunlid Date: Fri, 5 Jul 2013 08:54:03 +0200 Subject: [PATCH] MountService listeners can not be unregistered When unregistering MountService listeners, their Binder proxy objects were compared to registered listeners instead of their backing objects. Change-Id: Ie98a686b1d17544f1eda59fb3eb0dc02d836c1b2 --- services/java/com/android/server/MountService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/java/com/android/server/MountService.java b/services/java/com/android/server/MountService.java index e60231a4fd8a6..0d535cc7634ac 100644 --- a/services/java/com/android/server/MountService.java +++ b/services/java/com/android/server/MountService.java @@ -1411,7 +1411,7 @@ class MountService extends IMountService.Stub public void unregisterListener(IMountServiceListener listener) { synchronized (mListeners) { for(MountServiceBinderListener bl : mListeners) { - if (bl.mListener == listener) { + if (bl.mListener.asBinder() == listener.asBinder()) { mListeners.remove(mListeners.indexOf(bl)); listener.asBinder().unlinkToDeath(bl, 0); return;