Don't infer the default boot image location in otapreopt.
otapreopt calls derive_classpath but only takes BOOTCLASSPATH from the
output, not DEX2OATBOOTCLASSPATH or other env variables. The runtime
cannot handle this case when inferring the default boot image location
once aosp/2470962 is merged.
We don't have a boot image for otapreopt anyway, so just don't attempt
to infer the default boot image location.
Bug: 272573887
Test: ABTD (http://go/abtd-run/L42700000959054591): See no dex2oat
crashes in the logs, though the test is failing due to another known
issue (b/270940551)
Change-Id: I63c406b7f4c55247fec858d7b97234e7348a67da
diff --git a/cmds/installd/dexopt.cpp b/cmds/installd/dexopt.cpp
index 794750f..1693ed5 100644
--- a/cmds/installd/dexopt.cpp
+++ b/cmds/installd/dexopt.cpp
@@ -1942,7 +1942,8 @@
RUNTIME_NATIVE_BOOT_NAMESPACE,
ENABLE_JITZYGOTE_IMAGE,
/*default_value=*/ "");
- bool use_jitzygote_image = jitzygote_flag == "true" || IsBootClassPathProfilingEnable();
+ bool compile_without_image = jitzygote_flag == "true" || IsBootClassPathProfilingEnable() ||
+ force_compile_without_image();
// Decide whether to use dex2oat64.
bool use_dex2oat64 = false;
@@ -1964,7 +1965,7 @@
in_dex, in_vdex, dex_metadata, reference_profile, class_loader_context,
join_fds(context_input_fds), swap_fd.get(), instruction_set, compiler_filter,
debuggable, boot_complete, for_restore, target_sdk_version,
- enable_hidden_api_checks, generate_compact_dex, use_jitzygote_image,
+ enable_hidden_api_checks, generate_compact_dex, compile_without_image,
background_job_compile, compilation_reason);
bool cancelled = false;