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

Commit af73b7d2 authored by Yi-yo Chiang's avatar Yi-yo Chiang Committed by Automerger Merge Worker
Browse files

Merge "ApexManager: Allow duplicating VNDK APEX package names" into...

Merge "ApexManager: Allow duplicating VNDK APEX package names" into rvc-dev-plus-aosp am: 397e7efc

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12086438

Change-Id: I963b658bdcb54a4468ca8da3d4a33ffbd50570f4
parents bf8e96d3 397e7efc
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -77,6 +77,8 @@ public abstract class ApexManager {
    public static final int MATCH_ACTIVE_PACKAGE = 1 << 0;
    static final int MATCH_FACTORY_PACKAGE = 1 << 1;

    private static final String VNDK_APEX_MODULE_NAME_PREFIX = "com.android.vndk.";

    private static final Singleton<ApexManager> sApexManagerSingleton =
            new Singleton<ApexManager>() {
                @Override
@@ -521,7 +523,9 @@ public abstract class ApexManager {
                        activePackagesSet.add(packageInfo.packageName);
                    }
                    if (ai.isFactory) {
                        if (factoryPackagesSet.contains(packageInfo.packageName)) {
                        // Don't throw when the duplicating APEX is VNDK APEX
                        if (factoryPackagesSet.contains(packageInfo.packageName)
                                && !ai.moduleName.startsWith(VNDK_APEX_MODULE_NAME_PREFIX)) {
                            throw new IllegalStateException(
                                    "Two factory packages have the same name: "
                                            + packageInfo.packageName);