Add missing null check for mBatteryPercentView.
On an emulated device without a battery we've observed a NullPointerException coming from a call to setText() on a null mBatteryPercentView: FATAL EXCEPTION: main Process: com.android.systemui, PID: 4234 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference at com.android.systemui.BatteryMeterView.setPercentTextAtCurrentLevel(BatteryMeterView.java:380) at com.android.systemui.BatteryMeterView.lambda$updatePercentText$0(BatteryMeterView.java:366) at com.android.systemui.BatteryMeterView.lambda$updatePercentText$0$BatteryMeterView(Unknown Source:0) at com.android.systemui.-$$Lambda$BatteryMeterView$tE-TUFngFnD6fsDmUpqJf1miV_U.onBatteryRemainingEstimateRetrieved(Unknown Source:2) at com.android.systemui.statusbar.policy.BatteryControllerImpl.notifyEstimateFetchCallbacks(BatteryControllerImpl.java:308) at com.android.systemui.statusbar.policy.BatteryControllerImpl.lambda$0VzGTjPGwGKStizyJuiiH2rMVVk(Unknown Source:0) at com.android.systemui.statusbar.policy.-$$Lambda$BatteryControllerImpl$0VzGTjPGwGKStizyJuiiH2rMVVk.run(Unknown Source:2) It seems that it's possible for the battery meter to enter the hidden percentage state in between the check in updatePercentText() and the lambda callback. Guard against that possibility with a null check in the lambda. Bug: 178231152 Change-Id: Ia805a1a8497d4ad4f99c2864e17a88d46690d471
Loading
Please register or sign in to comment