diff --git a/hal/gonk/GonkHal.cpp b/hal/gonk/GonkHal.cpp index 6d8a229591d9..7d0c3028a345 100644 --- a/hal/gonk/GonkHal.cpp +++ b/hal/gonk/GonkHal.cpp @@ -351,8 +351,8 @@ GetCurrentBatteryInformation(hal::BatteryInformation *aBatteryInfo) chargingFile = fopen("/sys/class/power_supply/battery/status", "r"); if (chargingFile) { char status[16]; - fscanf(chargingFile, "%s", &status); - if (!strcmp(status, "Charging") || !strcmp(status, "Full")) { + char *str = fgets(status, sizeof(status), chargingFile); + if (str && (!strcmp(str, "Charging\n") || !strcmp(str, "Full\n"))) { // no way here to know if we're charging from USB or AC. chargingSrc = BATTERY_CHARGING_USB; } else {