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

Commit 4f9bf27e authored by Songchun Fan's avatar Songchun Fan
Browse files

[pm] restore ABI info on system stub install after update removal

Fix a boolean check

BUG: 153001171
Test: manual with installing an update and uninstall it for webview.
Change-Id: I83bd4d2e235a359ea09846cedf5010f4bf314c67
parent 8650e9aa
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -11203,8 +11203,16 @@ public class PackageManagerService extends IPackageManager.Stub
        boolean needToDeriveAbi = (scanFlags & SCAN_FIRST_BOOT_OR_UPGRADE) != 0;
        if (!needToDeriveAbi) {
            if (pkgSetting != null) {
                // TODO(b/154610922): if it is not first boot or upgrade, we should directly use
                // API info from existing package setting. However, stub packages currently do not
                // preserve ABI info, thus the special condition check here. Remove the special
                // check after we fix the stub generation.
                if (pkgSetting.pkg != null && pkgSetting.pkg.isStub()) {
                    needToDeriveAbi = true;
                } else {
                    primaryCpuAbiFromSettings = pkgSetting.primaryCpuAbiString;
                    secondaryCpuAbiFromSettings = pkgSetting.secondaryCpuAbiString;
                }
            } else {
                // Re-scanning a system package after uninstalling updates; need to derive ABI
                needToDeriveAbi = true;