Return empty suffix for invalid slots

Old HIDL HAL returns empty suffix, we should maintain this behavior in
AIDL.

Test: bootctl get-suffix 9, make sure result is empty
Bug: 219966986
Change-Id: Ia01c6bda899f3c5e0cdd1007cb051f7558f2e911
This commit is contained in:
Kelvin Zhang
2022-07-26 16:17:59 -07:00
parent 67bb5eb397
commit a6759d5d66

View File

@@ -84,10 +84,12 @@ ScopedAStatus BootControl::getSnapshotMergeStatus(MergeStatus* _aidl_return) {
ScopedAStatus BootControl::getSuffix(int32_t in_slot, std::string* _aidl_return) {
if (!impl_.IsValidSlot(in_slot)) {
return ScopedAStatus::fromServiceSpecificErrorWithMessage(
INVALID_SLOT, (std::string("Invalid slot ") + std::to_string(in_slot)).c_str());
// Old HIDL hal returns empty string for invalid slots. We should maintain this behavior in
// AIDL for compatibility.
_aidl_return->clear();
} else {
*_aidl_return = impl_.GetSuffix(in_slot);
}
*_aidl_return = impl_.GetSuffix(in_slot);
return ScopedAStatus::ok();
}