summaryrefslogtreecommitdiff
path: root/aosp/dynamic_partition_control_android.cc
diff options
context:
space:
mode:
authorKelvin Zhang <zhangkelvin@google.com>2020-11-16 15:47:28 -0500
committerKelvin Zhang <zhangkelvin@google.com>2020-11-17 10:51:51 -0500
commiteb9de160773d1277a6c3447ebedcfe27d2a45a77 (patch)
treeb014da1ef32bd31a967871fd3b0929d75398390a /aosp/dynamic_partition_control_android.cc
parent7010853f447ffbf09cf541fa2287f8f418055509 (diff)
Add IsDynamicPartition API to easily check if a partition is dynamic
Test: treehugger Change-Id: I655e4d6114a25c58857679985cd5e08581c0faab
Diffstat (limited to 'aosp/dynamic_partition_control_android.cc')
-rw-r--r--aosp/dynamic_partition_control_android.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/aosp/dynamic_partition_control_android.cc b/aosp/dynamic_partition_control_android.cc
index 7ccc39a0..ca12b3db 100644
--- a/aosp/dynamic_partition_control_android.cc
+++ b/aosp/dynamic_partition_control_android.cc
@@ -1283,4 +1283,14 @@ bool DynamicPartitionControlAndroid::MapAllPartitions() {
return snapshot_->MapAllSnapshots(kMapSnapshotTimeout);
}
+bool DynamicPartitionControlAndroid::IsDynamicPartition(
+ const std::string& partition_name) {
+ if (dynamic_partition_list_.empty() &&
+ GetDynamicPartitionsFeatureFlag().IsEnabled()) {
+ CHECK(ListDynamicPartitionsForSlot(source_slot_, &dynamic_partition_list_));
+ }
+ return std::find(dynamic_partition_list_.begin(),
+ dynamic_partition_list_.end(),
+ partition_name) != dynamic_partition_list_.end();
+}
} // namespace chromeos_update_engine