diff options
author | Android (Google) Code Review <android-gerrit@google.com> | 2009-10-16 15:36:40 -0400 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-10-16 15:36:40 -0400 |
commit | c75348a9384a5310bb34bf02cafd0076630f4a28 (patch) | |
tree | 72915e40669abd5df9d4af36863dd849777c279c /services | |
parent | 0b08abe1b8e4f49cfaefb8226696664ad3d5ca6a (diff) | |
parent | b897cff1ef1981757d8e26e24d1fc77893a34e40 (diff) | |
download | frameworks_base-c75348a9384a5310bb34bf02cafd0076630f4a28.zip frameworks_base-c75348a9384a5310bb34bf02cafd0076630f4a28.tar.gz frameworks_base-c75348a9384a5310bb34bf02cafd0076630f4a28.tar.bz2 |
Merge change Ib897cff1 into eclair
* changes:
do not merge Return valid package info for packages that have been uninstalled with an option to retain data and resources using the flag GET_UNINSTALLED_PACKAGES These packages do not have a package setting. just check the flag and return the required info from PackageParser.generatePackageInfo
Diffstat (limited to 'services')
-rw-r--r-- | services/java/com/android/server/PackageManagerService.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index 6289d4f..66e7ecd 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -872,6 +872,10 @@ class PackageManagerService extends IPackageManager.Stub { } PackageInfo generatePackageInfo(PackageParser.Package p, int flags) { + if ((flags & PackageManager.GET_UNINSTALLED_PACKAGES) != 0) { + // The package has been uninstalled but has retained data and resources. + return PackageParser.generatePackageInfo(p, null, flags); + } final PackageSetting ps = (PackageSetting)p.mExtras; if (ps == null) { return null; |