diff --git a/bootctrl/1.2/BootControl.cpp b/bootctrl/1.2/BootControl.cpp index 7782075..4e72805 100644 --- a/bootctrl/1.2/BootControl.cpp +++ b/bootctrl/1.2/BootControl.cpp @@ -345,8 +345,12 @@ Return BootControl::setActiveBootSlot(uint32_t slot, setActiveBootSlot_cb char boot_dev[PROPERTY_VALUE_MAX]; property_get("ro.boot.bootdevice", boot_dev, ""); if (boot_dev[0] == '\0') { - _hidl_cb({false, "invalid ro.boot.bootdevice prop"}); - return Void(); + ALOGI("failed to get ro.boot.bootdevice. try ro.boot.boot_devices\n"); + property_get("ro.boot.boot_devices", boot_dev, ""); + if (boot_dev[0] == '\0') { + _hidl_cb({false, "invalid ro.boot.bootdevice and ro.boot.boot_devices prop"}); + return Void(); + } } std::string boot_lun_path = diff --git a/bootctrl/aidl/BootControl.cpp b/bootctrl/aidl/BootControl.cpp index 941b0d2..0221514 100644 --- a/bootctrl/aidl/BootControl.cpp +++ b/bootctrl/aidl/BootControl.cpp @@ -461,8 +461,12 @@ ScopedAStatus BootControl::setActiveBootSlot(int32_t in_slot) { char boot_dev[PROPERTY_VALUE_MAX]; property_get("ro.boot.bootdevice", boot_dev, ""); if (boot_dev[0] == '\0') { - return ScopedAStatus::fromServiceSpecificErrorWithMessage( - COMMAND_FAILED, "invalid ro.boot.bootdevice prop"); + ALOGI("failed to get ro.boot.bootdevice. try ro.boot.boot_devices\n"); + property_get("ro.boot.boot_devices", boot_dev, ""); + if (boot_dev[0] == '\0') { + return ScopedAStatus::fromServiceSpecificErrorWithMessage( + COMMAND_FAILED, "invalid ro.boot.bootdevice and ro.boot.boot_devices prop"); + } } std::string boot_lun_path =