Fix NPE for UDFPS devices without HBM

Bug: 200295570
Test: run with a null HbmProvider on a UDFPS device
Change-Id: Id89552d3228b4770331e0eda558f0f97101ad8ca
This commit is contained in:
Ilya Matyukhin
2021-09-16 16:33:28 -07:00
parent 316587fad4
commit e30af88c93

View File

@@ -239,6 +239,7 @@ public class UdfpsView extends FrameLayout implements DozeReceiver, UdfpsIllumin
if (mGhbmView != null && surface == null) { if (mGhbmView != null && surface == null) {
Log.e(TAG, "doIlluminate | surface must be non-null for GHBM"); Log.e(TAG, "doIlluminate | surface must be non-null for GHBM");
} }
if (mHbmProvider != null) {
mHbmProvider.enableHbm(mHbmType, surface, () -> { mHbmProvider.enableHbm(mHbmType, surface, () -> {
if (mGhbmView != null) { if (mGhbmView != null) {
mGhbmView.drawIlluminationDot(mSensorRect); mGhbmView.drawIlluminationDot(mSensorRect);
@@ -252,6 +253,7 @@ public class UdfpsView extends FrameLayout implements DozeReceiver, UdfpsIllumin
} }
}); });
} }
}
@Override @Override
public void stopIllumination() { public void stopIllumination() {
@@ -263,6 +265,8 @@ public class UdfpsView extends FrameLayout implements DozeReceiver, UdfpsIllumin
mGhbmView.setGhbmIlluminationListener(null); mGhbmView.setGhbmIlluminationListener(null);
mGhbmView.setVisibility(View.INVISIBLE); mGhbmView.setVisibility(View.INVISIBLE);
} }
if (mHbmProvider != null) {
mHbmProvider.disableHbm(null /* onHbmDisabled */); mHbmProvider.disableHbm(null /* onHbmDisabled */);
} }
} }
}