Merge "Postpone the shared user checking after Q" into qt-dev

This commit is contained in:
Todd Kennedy
2019-07-19 17:13:48 +00:00
committed by Android (Google) Code Review

View File

@@ -16590,13 +16590,13 @@ public class PackageManagerService extends IPackageManager.Stub
&& compareSignatures(sharedUserSignatures, && compareSignatures(sharedUserSignatures,
pkg.mSigningDetails.signatures) pkg.mSigningDetails.signatures)
!= PackageManager.SIGNATURE_MATCH) { != PackageManager.SIGNATURE_MATCH) {
if (SystemProperties.getInt("ro.product.first_api_level", 0) <= 28) { if (SystemProperties.getInt("ro.product.first_api_level", 0) <= 29) {
// Mismatched signatures is an error and silently skipping system // Mismatched signatures is an error and silently skipping system
// packages will likely break the device in unforeseen ways. // packages will likely break the device in unforeseen ways.
// However, // However, we allow the device to boot anyway because, prior to Q,
// we allow the device to boot anyway because, prior to P, // vendors were not expecting the platform to crash in this
// vendors were // situation.
// not expecting the platform to crash in this situation. // This WILL be a hard failure on any new API levels after Q.
throw new ReconcileFailure( throw new ReconcileFailure(
INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES, INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES,
"Signature mismatch for shared user: " "Signature mismatch for shared user: "