diff options
author | Jeff Sharkey <jsharkey@android.com> | 2015-07-27 18:05:40 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-07-27 18:05:40 +0000 |
commit | 1662f5e0e3254cb28c600dcf747133419a7a88f1 (patch) | |
tree | 2a24bf97de472a623176f1333715bf9425750b16 | |
parent | 5f08e6732613b343acd8755de518c245be695610 (diff) | |
parent | 4b0fb0cf9cf5560980225bd6b18e14597d90cf0d (diff) | |
download | android_packages_providers_MediaProvider-1662f5e0e3254cb28c600dcf747133419a7a88f1.tar.gz android_packages_providers_MediaProvider-1662f5e0e3254cb28c600dcf747133419a7a88f1.tar.bz2 android_packages_providers_MediaProvider-1662f5e0e3254cb28c600dcf747133419a7a88f1.zip |
am 4b0fb0cf: Use own package name when not processing IPC.
* commit '4b0fb0cf9cf5560980225bd6b18e14597d90cf0d':
Use own package name when not processing IPC.
-rwxr-xr-x | src/com/android/providers/media/MediaProvider.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/com/android/providers/media/MediaProvider.java b/src/com/android/providers/media/MediaProvider.java index 39ed0d8b..2df6c1f4 100755 --- a/src/com/android/providers/media/MediaProvider.java +++ b/src/com/android/providers/media/MediaProvider.java @@ -5691,6 +5691,14 @@ public class MediaProvider extends ContentProvider { } } + private String getCallingPackageOrSelf() { + String callingPackage = getCallingPackage(); + if (callingPackage == null) { + callingPackage = getContext().getOpPackageName(); + } + return callingPackage; + } + private void enforceCallingOrSelfPermissionAndAppOps(String permission, String message) { getContext().enforceCallingOrSelfPermission(permission, message); @@ -5699,7 +5707,7 @@ public class MediaProvider extends ContentProvider { // told them the volume was unmounted. final String opName = AppOpsManager.permissionToOp(permission); if (opName != null) { - final String callingPackage = Preconditions.checkNotNull(getCallingPackage()); + final String callingPackage = getCallingPackageOrSelf(); if (mAppOpsManager.noteProxyOp(opName, callingPackage) != AppOpsManager.MODE_ALLOWED) { throw new SecurityException( message + ": " + callingPackage + " is not allowed to " + permission); |