Merge "Don't upgrade "extract" or "assume-verified" filters to "verify" when embedded dex files should be used."

This commit is contained in:
Martin Stjernholm
2022-11-23 20:11:38 +00:00
committed by Android (Google) Code Review

View File

@@ -785,7 +785,9 @@ public class PackageDexOptimizer {
private String getRealCompilerFilter(ApplicationInfo info, String targetCompilerFilter,
boolean isUsedByOtherApps) {
if (info.isEmbeddedDexUsed()) {
return "verify";
// Downgrade optimizing filters to "verify", but don't upgrade lower filters.
return DexFile.isOptimizedCompilerFilter(targetCompilerFilter) ? "verify"
: targetCompilerFilter;
}
// We force vmSafeMode on debuggable apps as well:
@@ -822,7 +824,9 @@ public class PackageDexOptimizer {
*/
private String getRealCompilerFilter(AndroidPackage pkg, String targetCompilerFilter) {
if (pkg.isUseEmbeddedDex()) {
return "verify";
// Downgrade optimizing filters to "verify", but don't upgrade lower filters.
return DexFile.isOptimizedCompilerFilter(targetCompilerFilter) ? "verify"
: targetCompilerFilter;
}
// We force vmSafeMode on debuggable apps as well: