2568467 System crash when installing corrupt APK

Also fix another crash I just saw in the package manager, when a
permission got left around from a previous install but as no
longer defined.

Change-Id: I33b87420f0c59e24b8b77fab8b0316461d99e048
This commit is contained in:
Dianne Hackborn
2010-04-05 14:33:01 -07:00
parent 01f6b75baa
commit 6e52b5d768
2 changed files with 6 additions and 0 deletions

View File

@@ -343,6 +343,9 @@ public class PackageParser {
} catch (IOException e) {
Log.w(TAG, "Exception reading " + je.getName() + " in "
+ jarFile.getName(), e);
} catch (RuntimeException e) {
Log.w(TAG, "Exception reading " + je.getName() + " in "
+ jarFile.getName(), e);
}
return null;
}

View File

@@ -4006,6 +4006,9 @@ class PackageManagerService extends IPackageManager.Stub {
if (bp.protectionLevel == PermissionInfo.PROTECTION_NORMAL
|| bp.protectionLevel == PermissionInfo.PROTECTION_DANGEROUS) {
allowed = true;
} else if (bp.packageSetting == null) {
// This permission is invalid; skip it.
allowed = false;
} else if (bp.protectionLevel == PermissionInfo.PROTECTION_SIGNATURE
|| bp.protectionLevel == PermissionInfo.PROTECTION_SIGNATURE_OR_SYSTEM) {
allowed = (checkSignaturesLP(bp.packageSetting.signatures.mSignatures, pkg.mSignatures)