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

Commit a863c7f6 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "fix system app's abi error after uninstall updated version."

parents e08f918a e2437036
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -10743,6 +10743,7 @@ public class PackageManagerService extends IPackageManager.Stub
        // them in the case where we're not upgrading or booting for the first time.
        String primaryCpuAbiFromSettings = null;
        String secondaryCpuAbiFromSettings = null;
        boolean needToDeriveAbi = (scanFlags & SCAN_FIRST_BOOT_OR_UPGRADE) != 0;
        // writer
        synchronized (mPackages) {
@@ -10820,11 +10821,14 @@ public class PackageManagerService extends IPackageManager.Stub
                }
            }
            if ((scanFlags & SCAN_FIRST_BOOT_OR_UPGRADE) == 0) {
            if (!needToDeriveAbi) {
                PackageSetting foundPs = mSettings.getPackageLPr(pkg.packageName);
                if (foundPs != null) {
                    primaryCpuAbiFromSettings = foundPs.primaryCpuAbiString;
                    secondaryCpuAbiFromSettings = foundPs.secondaryCpuAbiString;
                } else {
                    // when re-adding a system package failed after uninstalling updates.
                    needToDeriveAbi = true;
                }
            }
@@ -11031,7 +11035,7 @@ public class PackageManagerService extends IPackageManager.Stub
        final String cpuAbiOverride = deriveAbiOverride(pkg.cpuAbiOverride, pkgSetting);
        if ((scanFlags & SCAN_NEW_INSTALL) == 0) {
            if ((scanFlags & SCAN_FIRST_BOOT_OR_UPGRADE) != 0) {
            if (needToDeriveAbi) {
                Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "derivePackageAbi");
                final boolean extractNativeLibs = !pkg.isLibrary();
                derivePackageAbi(pkg, scanFile, cpuAbiOverride, extractNativeLibs,