summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2015-07-27 18:30:51 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-07-27 18:30:51 +0000
commit688e467f31d22bf6058e8baefdf06d11950a86ca (patch)
tree58eb10b454caf8b2142520f06f3996a6e7f4a9b7
parent96deac688c684f3fa76cfb6c8db555d50c452658 (diff)
parentb004c90e510d1e2c9c9a9368ee0b6039d2be7426 (diff)
downloadandroid_packages_providers_MediaProvider-688e467f31d22bf6058e8baefdf06d11950a86ca.tar.gz
android_packages_providers_MediaProvider-688e467f31d22bf6058e8baefdf06d11950a86ca.tar.bz2
android_packages_providers_MediaProvider-688e467f31d22bf6058e8baefdf06d11950a86ca.zip
am b004c90e: am 1662f5e0: am 4b0fb0cf: Use own package name when not processing IPC.
* commit 'b004c90e510d1e2c9c9a9368ee0b6039d2be7426': 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);