ChargingControl: Prevent crash against very frequent power toggle
Log: 12-04 00:04:42.661 1499 1499 E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: main 12-04 00:04:42.661 1499 1499 E AndroidRuntime: java.lang.RuntimeException: Error receiving broadcast Intent { act=android.intent.action.ACTION_POWER_DISCONNECTED flg=0x4000010 (has extras) } in org.lineageos.platform.internal.health.ChargingControlController$2@7432f8e 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1822) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.app.LoadedApk$ReceiverDispatcher$Args.$r8$lambda$mcNAAl1SQ4MyJPyDg8TJ2x2h0Rk(Unknown Source:0) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:959) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:100) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:232) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.os.Looper.loop(Looper.java:317) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at com.android.server.SystemServer.run(SystemServer.java:985) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at com.android.server.SystemServer.main(SystemServer.java:669) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:583) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:864) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: Caused by: java.lang.IllegalArgumentException: Receiver not registered: org.lineageos.platform.internal.health.ChargingControlController$LineageHealthBatteryBroadcastReceiver@7c6b69a 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:1674) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:1901) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at org.lineageos.platform.internal.health.ChargingControlController.onPowerDisconnected(ChargingControlController.java:325) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at org.lineageos.platform.internal.health.ChargingControlController.onPowerStatus(ChargingControlController.java:336) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at org.lineageos.platform.internal.health.ChargingControlController.-$$Nest$monPowerStatus(Unknown Source:0) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at org.lineageos.platform.internal.health.ChargingControlController$2.onReceive(ChargingControlController.java:290) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0(LoadedApk.java:1814) 12-04 00:04:42.661 1499 1499 E AndroidRuntime: ... 11 more Change-Id: Ic2c1df60881ea06bd2cd3f6b68ea3ff7c1273153
Loading
Please register or sign in to comment