From 2a201a74c221ed6bf4adf597d7437b3a724a3898 Mon Sep 17 00:00:00 2001 From: Jason Chiu Date: Sat, 25 Nov 2023 02:53:02 +0800 Subject: [PATCH] gs-common: bootctrl: check both properties in setActiveBootSlot properties: ro.boot.bootdevice, ro.boot.boot_devices Bug: 313092597 Change-Id: Ib158c2b2aadf87b2155c4c268264f06bc659b544 Signed-off-by: Jason Chiu --- bootctrl/1.2/BootControl.cpp | 8 ++++++-- bootctrl/aidl/BootControl.cpp | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) 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 =