diff --git a/services/core/java/com/android/server/MountService.java b/services/core/java/com/android/server/MountService.java index 0e158a2e59dc1..92b98a71f0cb5 100644 --- a/services/core/java/com/android/server/MountService.java +++ b/services/core/java/com/android/server/MountService.java @@ -740,15 +740,20 @@ class MountService extends IMountService.Stub */ @Deprecated private void killMediaProvider() { - final ProviderInfo provider = mPms.resolveContentProvider(MediaStore.AUTHORITY, 0, - UserHandle.USER_OWNER); - if (provider != null) { - final IActivityManager am = ActivityManagerNative.getDefault(); - try { - am.killApplicationWithAppId(provider.applicationInfo.packageName, - UserHandle.getAppId(provider.applicationInfo.uid), "vold reset"); - } catch (RemoteException e) { + final long token = Binder.clearCallingIdentity(); + try { + final ProviderInfo provider = mPms.resolveContentProvider(MediaStore.AUTHORITY, 0, + UserHandle.USER_OWNER); + if (provider != null) { + final IActivityManager am = ActivityManagerNative.getDefault(); + try { + am.killApplicationWithAppId(provider.applicationInfo.packageName, + UserHandle.getAppId(provider.applicationInfo.uid), "vold reset"); + } catch (RemoteException e) { + } } + } finally { + Binder.restoreCallingIdentity(token); } }