BootControl: is slot marked successful Test: update_engine_unittests Bug: 147696014 Change-Id: I316efda7a0936e2dee0f766efb5c18ff30790274
diff --git a/boot_control_android.cc b/boot_control_android.cc index 429de6a..ec2ca0f 100644 --- a/boot_control_android.cc +++ b/boot_control_android.cc
@@ -150,6 +150,22 @@ brillo::MessageLoop::kTaskIdNull; } +bool BootControlAndroid::IsSlotMarkedSuccessful( + BootControlInterface::Slot slot) const { + Return<BoolResult> ret = module_->isSlotMarkedSuccessful(slot); + CommandResult result; + if (!ret.isOk()) { + LOG(ERROR) << "Unable to determine if slot " << SlotName(slot) + << " is marked successful: " << ret.description(); + return false; + } + if (ret == BoolResult::INVALID_SLOT) { + LOG(ERROR) << "Invalid slot: " << SlotName(slot); + return false; + } + return ret == BoolResult::TRUE; +} + DynamicPartitionControlInterface* BootControlAndroid::GetDynamicPartitionControl() { return dynamic_control_.get();