Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c6040826 authored by Todd Kennedy's avatar Todd Kennedy Committed by Android (Google) Code Review
Browse files

Merge "Skip upgrade keys for adopted storage" into mnc-dev

parents c0039894 c293d3ad
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -310,6 +310,7 @@ public class PackageManagerService extends IPackageManager.Stub {
    static final int SCAN_DELETE_DATA_ON_FAILURES = 1<<10;
    static final int SCAN_REQUIRE_KNOWN = 1<<12;
    static final int SCAN_MOVE = 1<<13;
    static final int SCAN_INITIAL = 1<<14;
    static final int REMOVE_CHATTY = 1<<16;
@@ -1840,7 +1841,7 @@ public class PackageManagerService extends IPackageManager.Stub {
            // Set flag to monitor and not change apk file paths when
            // scanning install directories.
            final int scanFlags = SCAN_NO_PATHS | SCAN_DEFER_DEX | SCAN_BOOTING;
            final int scanFlags = SCAN_NO_PATHS | SCAN_DEFER_DEX | SCAN_BOOTING | SCAN_INITIAL;
            final ArraySet<String> alreadyDexOpted = new ArraySet<String>();
@@ -11327,7 +11328,7 @@ public class PackageManagerService extends IPackageManager.Stub {
    private boolean shouldCheckUpgradeKeySetLP(PackageSetting oldPs, int scanFlags) {
        // Can't rotate keys during boot or if sharedUser.
        if (oldPs == null || (scanFlags&SCAN_BOOTING) != 0 || oldPs.sharedUser != null
        if (oldPs == null || (scanFlags&SCAN_INITIAL) != 0 || oldPs.sharedUser != null
                || !oldPs.keySetData.isUsingUpgradeKeySets()) {
            return false;
        }
@@ -11711,6 +11712,10 @@ public class PackageManagerService extends IPackageManager.Stub {
                || (args.volumeUuid != null));
        boolean replace = false;
        int scanFlags = SCAN_NEW_INSTALL | SCAN_UPDATE_SIGNATURE;
        if (args.move != null) {
            // moving a complete application; perfom an initial scan on the new install location
            scanFlags |= SCAN_INITIAL;
        }
        // Result object to be returned
        res.returnCode = PackageManager.INSTALL_SUCCEEDED;
@@ -15007,7 +15012,7 @@ public class PackageManagerService extends IPackageManager.Stub {
            for (PackageSetting ps : packages) {
                final PackageParser.Package pkg;
                try {
                    pkg = scanPackageLI(ps.codePath, parseFlags, 0, 0, null);
                    pkg = scanPackageLI(ps.codePath, parseFlags, SCAN_INITIAL, 0L, null);
                    loaded.add(pkg.applicationInfo);
                } catch (PackageManagerException e) {
                    Slog.w(TAG, "Failed to scan " + ps.codePath + ": " + e.getMessage());