Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 808e57e3 authored by Yi Kong's avatar Yi Kong
Browse files

healthd: Fix negativity check after cast to unsigned enum

mapSysfsString return code is checked for negativity after being casted
to unsigned enum type, which will always be false. This is obviously
unintended behaviour.

Fixes tautological-unsigned-enum-zero-compare warning.

Bug: 72331526
Test: m
Change-Id: Icec76d7a1121cb56fd9d05feb70cede69954c322
parent fd42c098
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -143,7 +143,7 @@ int BatteryMonitor::readFromFile(const String8& path, std::string* buf) {


BatteryMonitor::PowerSupplyType BatteryMonitor::readPowerSupplyType(const String8& path) {
BatteryMonitor::PowerSupplyType BatteryMonitor::readPowerSupplyType(const String8& path) {
    std::string buf;
    std::string buf;
    BatteryMonitor::PowerSupplyType ret;
    int ret;
    struct sysfsStringEnumMap supplyTypeMap[] = {
    struct sysfsStringEnumMap supplyTypeMap[] = {
            { "Unknown", ANDROID_POWER_SUPPLY_TYPE_UNKNOWN },
            { "Unknown", ANDROID_POWER_SUPPLY_TYPE_UNKNOWN },
            { "Battery", ANDROID_POWER_SUPPLY_TYPE_BATTERY },
            { "Battery", ANDROID_POWER_SUPPLY_TYPE_BATTERY },
@@ -164,13 +164,13 @@ BatteryMonitor::PowerSupplyType BatteryMonitor::readPowerSupplyType(const String
    if (readFromFile(path, &buf) <= 0)
    if (readFromFile(path, &buf) <= 0)
        return ANDROID_POWER_SUPPLY_TYPE_UNKNOWN;
        return ANDROID_POWER_SUPPLY_TYPE_UNKNOWN;


    ret = (BatteryMonitor::PowerSupplyType)mapSysfsString(buf.c_str(), supplyTypeMap);
    ret = mapSysfsString(buf.c_str(), supplyTypeMap);
    if (ret < 0) {
    if (ret < 0) {
        KLOG_WARNING(LOG_TAG, "Unknown power supply type '%s'\n", buf.c_str());
        KLOG_WARNING(LOG_TAG, "Unknown power supply type '%s'\n", buf.c_str());
        ret = ANDROID_POWER_SUPPLY_TYPE_UNKNOWN;
        ret = ANDROID_POWER_SUPPLY_TYPE_UNKNOWN;
    }
    }


    return ret;
    return static_cast<BatteryMonitor::PowerSupplyType>(ret);
}
}


bool BatteryMonitor::getBooleanField(const String8& path) {
bool BatteryMonitor::getBooleanField(const String8& path) {