From 1b9bc2d19e98592205ec437c98e89d1cfe0d5a2c Mon Sep 17 00:00:00 2001 From: minaripenguin Date: Thu, 7 Sep 2023 08:16:30 +0800 Subject: BatteryStatsImpl: Fix divide by zero error E BatteryExternalStatsWorker: Error updating external stats: E BatteryExternalStatsWorker: java.lang.ArithmeticException: divide by zero E BatteryExternalStatsWorker: at com.android.internal.os.BatteryStatsImpl.noteModemControllerActivity(BatteryStatsImpl.java:13748) E BatteryExternalStatsWorker: at com.android.server.am.BatteryExternalStatsWorker.updateExternalStatsLocked(BatteryExternalStatsWorker.java:756) E BatteryExternalStatsWorker: at com.android.server.am.BatteryExternalStatsWorker.-$$Nest$mupdateExternalStatsLocked(Unknown Source:0) E BatteryExternalStatsWorker: at com.android.server.am.BatteryExternalStatsWorker$1.run(BatteryExternalStatsWorker.java:470) Change-Id: Ic13273965732e6eba5d33d0aa229b216da58af02 Signed-off-by: minaripenguin --- core/java/com/android/internal/os/BatteryStatsImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index e1e57de15346..08e36db5d92e 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -13742,7 +13742,7 @@ public class BatteryStatsImpl extends BatteryStats { final SparseDoubleArray uidEstimatedConsumptionMah; final long dataConsumedChargeUC; if (consumedChargeUC > 0 && mMobileRadioPowerCalculator != null - && mGlobalMeasuredEnergyStats != null) { + && mGlobalMeasuredEnergyStats != null && totalRadioDurationMs != 0) { // Crudely attribute power consumption. Added (totalRadioDurationMs / 2) to the // numerator for long rounding. final long phoneConsumedChargeUC = -- cgit v1.2.3