summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2015-07-27 18:05:40 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-07-27 18:05:40 +0000
commit1662f5e0e3254cb28c600dcf747133419a7a88f1 (patch)
tree2a24bf97de472a623176f1333715bf9425750b16
parent5f08e6732613b343acd8755de518c245be695610 (diff)
parent4b0fb0cf9cf5560980225bd6b18e14597d90cf0d (diff)
downloadandroid_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-xsrc/com/android/providers/media/MediaProvider.java10
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);