Mark mAutomaticBrightnessController @Nullable.

Check that AutomaticBrightnessController is not null before calling update() and resetShortTermModel().

Bug: 203737431
Test: manual: flashed build with automaticBrightnessController set to null and verified that no NPE is thrown.
Change-Id: Ie709d4bc7e6166eeb7e936bea79162f468c713f4
This commit is contained in:
Philip Junker
2021-11-04 19:32:18 +01:00
parent e37c9cb7ac
commit 4d9cb42e21

View File

@@ -378,6 +378,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
private float mInitialAutoBrightness;
// The controller for the automatic brightness level.
@Nullable
private AutomaticBrightnessController mAutomaticBrightnessController;
private Sensor mLightSensor;
@@ -608,7 +609,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
mPendingRbcOnOrChanged = strengthChanged || justActivated;
// Reset model if strength changed OR rbc is turned off
if (strengthChanged || !justActivated && mAutomaticBrightnessController != null) {
if ((strengthChanged || !justActivated) && mAutomaticBrightnessController != null) {
mAutomaticBrightnessController.resetShortTermModel();
}
}
@@ -1567,7 +1568,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
sendUpdatePowerStateLocked();
mHandler.post(mOnBrightnessChangeRunnable);
// TODO(b/192258832): Switch the HBMChangeCallback to a listener pattern.
mAutomaticBrightnessController.update();
if (mAutomaticBrightnessController != null) {
mAutomaticBrightnessController.update();
}
}, mContext);
}