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

Commit 0d616883 authored by Jeff Sharkey's avatar Jeff Sharkey Committed by Android (Google) Code Review
Browse files

Merge "Fix moving of apps into legacy ASEC." into mnc-dev

parents 52d3312a 94dacb12
Loading
Loading
Loading
Loading
+18 −10
Original line number Diff line number Diff line
@@ -15814,10 +15814,15 @@ public class PackageManagerService extends IPackageManager.Stub {
                        "Cannot move system application");
            }
            if (Objects.equals(ps.volumeUuid, volumeUuid)) {
                throw new PackageManagerException(MOVE_FAILED_INTERNAL_ERROR,
                        "Package already moved to " + volumeUuid);
            }
            if (pkg.applicationInfo.isExternalAsec()) {
                currentAsec = true;
                currentVolumeUuid = StorageManager.UUID_PRIMARY_PHYSICAL;
            } else if (pkg.applicationInfo.isForwardLocked()) {
                currentAsec = true;
                currentVolumeUuid = "forward_locked";
            } else {
                currentAsec = false;
                currentVolumeUuid = ps.volumeUuid;
                final File probe = new File(pkg.codePath);
                final File probeOat = new File(probe, "oat");
@@ -15825,6 +15830,12 @@ public class PackageManagerService extends IPackageManager.Stub {
                    throw new PackageManagerException(MOVE_FAILED_INTERNAL_ERROR,
                            "Move only supported for modern cluster style installs");
                }
            }
            if (Objects.equals(currentVolumeUuid, volumeUuid)) {
                throw new PackageManagerException(MOVE_FAILED_INTERNAL_ERROR,
                        "Package already moved to " + volumeUuid);
            }
            if (ps.frozen) {
                throw new PackageManagerException(MOVE_FAILED_OPERATION_PENDING,
@@ -15832,9 +15843,6 @@ public class PackageManagerService extends IPackageManager.Stub {
            }
            ps.frozen = true;
            currentAsec = pkg.applicationInfo.isForwardLocked()
                    || pkg.applicationInfo.isExternalAsec();
            currentVolumeUuid = ps.volumeUuid;
            codeFile = new File(pkg.codePath);
            installerPackageName = ps.installerPackageName;
            packageAbiOverride = ps.cpuAbiOverrideString;