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

Commit 0865347d authored by vichang's avatar vichang Committed by android-build-merger
Browse files

Merge "Include /apex/com.android.runtime for native library in app classloader" am: 9de24de6

am: 8c6c630b

Change-Id: I8f8a014446f9d3079a4e78d2010bbd9b4e3f69af
parents 29c9a8f8 8c6c630b
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -850,8 +850,9 @@ public final class LoadedApk {
            }
        }

        // /vendor/lib, /odm/lib and /product/lib are added to the native lib search
        // paths of the classloader. Note that this is done AFTER the classloader is
        // /aepx/com.android.runtime/lib, /vendor/lib, /odm/lib and /product/lib
        // are added to the native lib search paths of the classloader.
        // Note that this is done AFTER the classloader is
        // created by ApplicationLoaders.getDefault().getClassLoader(...). The
        // reason is because if we have added the paths when creating the classloader
        // above, the paths are also added to the search path of the linker namespace
@@ -868,8 +869,11 @@ public final class LoadedApk {
        // System.loadLibrary(). In order to prevent the problem, we explicitly
        // add the paths only to the classloader, and not to the native loader
        // (linker namespace).
        List<String> extraLibPaths = new ArrayList<>(3);
        List<String> extraLibPaths = new ArrayList<>(4);
        String abiSuffix = VMRuntime.getRuntime().is64Bit() ? "64" : "";
        if (!defaultSearchPaths.contains("/apex/com.android.runtime/lib")) {
            extraLibPaths.add("/apex/com.android.runtime/lib" + abiSuffix);
        }
        if (!defaultSearchPaths.contains("/vendor/lib")) {
            extraLibPaths.add("/vendor/lib" + abiSuffix);
        }