summaryrefslogtreecommitdiffstats
path: root/services/java/com/android/server/pm/Settings.java
diff options
context:
space:
mode:
authorKenny Root <kroot@google.com>2012-05-07 23:04:52 -0700
committerKenny Root <kroot@google.com>2012-05-07 23:07:49 -0700
commitc52d6fd04316483f4a88f3a087b93bb197cd97f4 (patch)
tree9870f2edcfd9f3e84f087a75d6f388b7244c2d75 /services/java/com/android/server/pm/Settings.java
parent775bcac6bcdd04b6bffd23b5de0da4588a749337 (diff)
downloadframeworks_base-c52d6fd04316483f4a88f3a087b93bb197cd97f4.zip
frameworks_base-c52d6fd04316483f4a88f3a087b93bb197cd97f4.tar.gz
frameworks_base-c52d6fd04316483f4a88f3a087b93bb197cd97f4.tar.bz2
Prune hidden system apps when removed via OTA
System applications which had an update applied to them at some point were in a semi-broken state when removed via an OTA. The "updated-package" setting would stay around forever and permissions wouldn't be revoked. Change-Id: I908e813b5de59c0f777d9b051253b28255a1c694
Diffstat (limited to 'services/java/com/android/server/pm/Settings.java')
-rw-r--r--services/java/com/android/server/pm/Settings.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/services/java/com/android/server/pm/Settings.java b/services/java/com/android/server/pm/Settings.java
index d015278..d0eda2d 100644
--- a/services/java/com/android/server/pm/Settings.java
+++ b/services/java/com/android/server/pm/Settings.java
@@ -102,7 +102,7 @@ final class Settings {
final HashMap<String, PackageSetting> mPackages =
new HashMap<String, PackageSetting>();
// List of replaced system applications
- final HashMap<String, PackageSetting> mDisabledSysPackages =
+ private final HashMap<String, PackageSetting> mDisabledSysPackages =
new HashMap<String, PackageSetting>();
// These are the last platform API version we were using for
@@ -280,6 +280,14 @@ final class Settings {
return ret;
}
+ boolean isDisabledSystemPackageLPr(String name) {
+ return mDisabledSysPackages.containsKey(name);
+ }
+
+ void removeDisabledSystemPackageLPw(String name) {
+ mDisabledSysPackages.remove(name);
+ }
+
PackageSetting addPackageLPw(String name, String realName, File codePath, File resourcePath,
String nativeLibraryPathString, int uid, int vc, int pkgFlags) {
PackageSetting p = mPackages.get(name);