From: Colin Ian King <[email protected]>

Currently if the pointer battery is null there is a null pointer
dereference on the call to power_supply_put.  Fix this by only
performing the put if battery is not null.

Addresses-Coverity: ("Dereference after null check")
Fixes: 4bff91bb3231 ("power: supply: cpcap-charger: Fix missing 
power_supply_put()")
Signed-off-by: Colin Ian King <[email protected]>
---
 drivers/power/supply/cpcap-charger.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/power/supply/cpcap-charger.c 
b/drivers/power/supply/cpcap-charger.c
index 823d666f09e0..641dcad1133f 100644
--- a/drivers/power/supply/cpcap-charger.c
+++ b/drivers/power/supply/cpcap-charger.c
@@ -300,8 +300,9 @@ cpcap_charger_get_bat_const_charge_voltage(struct 
cpcap_charger_ddata *ddata)
                                &prop);
                if (!error)
                        voltage = prop.intval;
+
+               power_supply_put(battery);
        }
-       power_supply_put(battery);
 
        return voltage;
 }
-- 
2.29.2

Reply via email to