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

Commit 8ccfe899 authored by Andreas Gampe's avatar Andreas Gampe Committed by Android (Google) Code Review
Browse files

Merge "resolved conflicts for merge of b6d6c04a to master"

parents bd5e03b6 2c1078fb
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -91,11 +91,11 @@ public class InstallerConnection {
    }

    public int dexopt(String apkPath, int uid, boolean isPublic, String instructionSet) {
        return dexopt(apkPath, uid, isPublic, "*", instructionSet, false);
        return dexopt(apkPath, uid, isPublic, "*", instructionSet, false, false);
    }

    public int dexopt(String apkPath, int uid, boolean isPublic, String pkgName,
            String instructionSet, boolean vmSafeMode) {
            String instructionSet, boolean vmSafeMode, boolean debuggable) {
        StringBuilder builder = new StringBuilder("dexopt");
        builder.append(' ');
        builder.append(apkPath);
@@ -106,8 +106,8 @@ public class InstallerConnection {
        builder.append(pkgName);
        builder.append(' ');
        builder.append(instructionSet);
        builder.append(' ');
        builder.append(vmSafeMode ? " 1" : " 0");
        builder.append(debuggable ? " 1" : " 0");
        return execute(builder.toString());
    }

+3 −2
Original line number Diff line number Diff line
@@ -83,13 +83,14 @@ public final class Installer extends SystemService {
    }

    public int dexopt(String apkPath, int uid, boolean isPublic, String pkgName,
            String instructionSet, boolean vmSafeMode) {
            String instructionSet, boolean vmSafeMode, boolean debuggable) {
        if (!isValidInstructionSet(instructionSet)) {
            Slog.e(TAG, "Invalid instruction set: " + instructionSet);
            return -1;
        }

        return mInstaller.dexopt(apkPath, uid, isPublic, pkgName, instructionSet, vmSafeMode);
        return mInstaller.dexopt(apkPath, uid, isPublic, pkgName, instructionSet, vmSafeMode,
                debuggable);
    }

    public int idmap(String targetApkPath, String overlayApkPath, int uid) {
+3 −2
Original line number Diff line number Diff line
@@ -93,6 +93,7 @@ final class PackageDexOptimizer {
        }

        final boolean vmSafeMode = (pkg.applicationInfo.flags & ApplicationInfo.FLAG_VM_SAFE_MODE) != 0;
        final boolean debuggable = (pkg.applicationInfo.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0;

        final List<String> paths = pkg.getAllCodePathsExcludingResourceOnly();
        boolean performedDexOpt = false;
@@ -118,11 +119,11 @@ final class PackageDexOptimizer {
                    if (forceDex || (!defer && isDexOptNeeded == DexFile.DEXOPT_NEEDED)) {
                        Log.i(TAG, "Running dexopt on: " + path + " pkg="
                                + pkg.applicationInfo.packageName + " isa=" + dexCodeInstructionSet
                                + " vmSafeMode=" + vmSafeMode);
                                + " vmSafeMode=" + vmSafeMode + " debuggable=" + debuggable);
                        final int sharedGid = UserHandle.getSharedAppGid(pkg.applicationInfo.uid);
                        final int ret = mPackageManagerService.mInstaller.dexopt(path, sharedGid,
                                !pkg.isForwardLocked(), pkg.packageName, dexCodeInstructionSet,
                                vmSafeMode);
                                vmSafeMode, debuggable);

                        if (ret < 0) {
                            // Don't bother running dexopt again if we failed, it will probably