Otapreopt: Try to mount vendor partition for A/B OTA
Vendor apps are usually not preopted, so A/B dexopt should pick
them up. update_engine is not mounting the vendor partition, so
let otapreopt_chroot do the work.
Bug: 25612095
Bug: 29498238
Change-Id: I5a77bdb78a8e478ce10f6c1d0f911a8d6686becb
(cherry picked from commit 0ba073ce81fbe544592e0a3cd526b274e83fdf9f)
diff --git a/cmds/installd/commands.cpp b/cmds/installd/commands.cpp
index 64afd96..95451bf 100644
--- a/cmds/installd/commands.cpp
+++ b/cmds/installd/commands.cpp
@@ -44,6 +44,7 @@
#include <globals.h>
#include <installd_deps.h>
+#include <otapreopt_utils.h>
#include <utils.h>
#ifndef LOG_TAG
@@ -2124,10 +2125,7 @@
}
slot_suffix = buf;
- // Validate.
- std::regex slot_suffix_regex("[a-zA-Z0-9_]+");
- std::smatch slot_suffix_match;
- if (!std::regex_match(slot_suffix, slot_suffix_match, slot_suffix_regex)) {
+ if (!ValidateTargetSlotSuffix(slot_suffix)) {
LOG(ERROR) << "Target slot suffix not legal: " << slot_suffix;
return -1;
}