Mount /metadata in sideload.
In recovery, /metadata needs to be mounted before doing
any updates (even regular ones) on VAB device.
Test: sideload
Bug: 140749209
Change-Id: Iad8ef63c572b7b6d3ad8be5ee7ec11001b337435
diff --git a/dynamic_partition_control_android.cc b/dynamic_partition_control_android.cc
index e194670..f017c9f 100644
--- a/dynamic_partition_control_android.cc
+++ b/dynamic_partition_control_android.cc
@@ -213,6 +213,7 @@
}
void DynamicPartitionControlAndroid::CleanupInternal(bool wait) {
+ metadata_device_.reset();
if (mapped_devices_.empty()) {
return;
}
@@ -356,6 +357,11 @@
target_supports_snapshot_ =
manifest.dynamic_partition_metadata().snapshot_enabled();
+ if (GetVirtualAbFeatureFlag().IsEnabled()) {
+ metadata_device_ = snapshot_->EnsureMetadataMounted();
+ TEST_AND_RETURN_FALSE(metadata_device_ != nullptr);
+ }
+
if (!update)
return true;