summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@google.com>2015-08-28 19:59:40 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-08-28 19:59:40 +0000
commitac4fd0702e04be88b5aa7b539cf38195abd343c5 (patch)
tree0b911afe7be95a5853133aedac3a7d4516f99184
parent1367b508f0657e4aa59027ee3985af2a9df307b6 (diff)
parent90023609cff5e25697c852034106d9c4fdb9ea49 (diff)
downloadframeworks_base-ac4fd0702e04be88b5aa7b539cf38195abd343c5.zip
frameworks_base-ac4fd0702e04be88b5aa7b539cf38195abd343c5.tar.gz
frameworks_base-ac4fd0702e04be88b5aa7b539cf38195abd343c5.tar.bz2
am 90023609: am 71f15791: am d88152b4: Merge "Give shell permission to move apps." into mnc-dev
* commit '90023609cff5e25697c852034106d9c4fdb9ea49': Give shell permission to move apps.
-rw-r--r--packages/Shell/AndroidManifest.xml1
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java11
2 files changed, 9 insertions, 3 deletions
diff --git a/packages/Shell/AndroidManifest.xml b/packages/Shell/AndroidManifest.xml
index 37e0db0..d785cca 100644
--- a/packages/Shell/AndroidManifest.xml
+++ b/packages/Shell/AndroidManifest.xml
@@ -65,6 +65,7 @@
<uses-permission android:name="android.permission.READ_INPUT_STATE" />
<uses-permission android:name="android.permission.SET_ORIENTATION" />
<uses-permission android:name="android.permission.INSTALL_PACKAGES" />
+ <uses-permission android:name="android.permission.MOVE_PACKAGE" />
<uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
<uses-permission android:name="android.permission.DELETE_CACHE_FILES" />
<uses-permission android:name="android.permission.DELETE_PACKAGES" />
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index e1bd9f9..3f5c270 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -13600,9 +13600,14 @@ public class PackageManagerService extends IPackageManager.Stub {
libDirRoot = ps.legacyNativeLibraryPathString;
}
if (p != null && (isExternal(p) || p.isForwardLocked())) {
- String secureContainerId = cidFromCodePath(p.applicationInfo.getBaseCodePath());
- if (secureContainerId != null) {
- asecPath = PackageHelper.getSdFilesystem(secureContainerId);
+ final long token = Binder.clearCallingIdentity();
+ try {
+ String secureContainerId = cidFromCodePath(p.applicationInfo.getBaseCodePath());
+ if (secureContainerId != null) {
+ asecPath = PackageHelper.getSdFilesystem(secureContainerId);
+ }
+ } finally {
+ Binder.restoreCallingIdentity(token);
}
}
}