Correctly propagate not_in_payload flag
When mapping partitions, not_in_payload flag decides if the partition
needs to be mapped as a snapshot backed by COW, propagate this flag.
Test: treehugger
Change-Id: I9f0073fb91067410978927e59bf51c4f2cd152e6
diff --git a/aosp/dynamic_partition_control_android.cc b/aosp/dynamic_partition_control_android.cc
index c75d5e9..ff2d7ee 100644
--- a/aosp/dynamic_partition_control_android.cc
+++ b/aosp/dynamic_partition_control_android.cc
@@ -967,7 +967,8 @@
bool not_in_payload,
std::string* device,
bool* is_dynamic) {
- auto partition_dev = GetPartitionDevice(partition_name, slot, current_slot);
+ auto partition_dev =
+ GetPartitionDevice(partition_name, slot, current_slot, not_in_payload);
if (!partition_dev.has_value()) {
return false;
}
diff --git a/aosp/dynamic_partition_control_android.h b/aosp/dynamic_partition_control_android.h
index ecab6fa..9e11279 100644
--- a/aosp/dynamic_partition_control_android.h
+++ b/aosp/dynamic_partition_control_android.h
@@ -76,7 +76,7 @@
const std::string& partition_name,
uint32_t slot,
uint32_t current_slot,
- bool not_in_payload = false);
+ bool not_in_payload);
// Deprecated, please use GetPartitionDevice(string, uint32_t, uint32_t);
// TODO(zhangkelvin) Remove below deprecated APIs.
bool GetPartitionDevice(const std::string& partition_name,
diff --git a/aosp/dynamic_partition_control_android_unittest.cc b/aosp/dynamic_partition_control_android_unittest.cc
index af5ae2c..b2e5c89 100644
--- a/aosp/dynamic_partition_control_android_unittest.cc
+++ b/aosp/dynamic_partition_control_android_unittest.cc
@@ -425,7 +425,7 @@
// If VABC is disabled, mountable device path should be same as device path.
auto device_info =
- dynamicControl().GetPartitionDevice("system", target(), source());
+ dynamicControl().GetPartitionDevice("system", target(), source(), false);
ASSERT_TRUE(device_info.has_value());
ASSERT_EQ(device_info->mountable_device_path, device);
}
@@ -465,7 +465,7 @@
ASSERT_EQ("", device);
auto device_info =
- dynamicControl().GetPartitionDevice("system", target(), source());
+ dynamicControl().GetPartitionDevice("system", target(), source(), false);
ASSERT_TRUE(device_info.has_value());
ASSERT_EQ(device_info->mountable_device_path, GetDevice(T("system")));
}