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:
@@ -239,18 +239,20 @@ 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");
|
||||||
}
|
}
|
||||||
mHbmProvider.enableHbm(mHbmType, surface, () -> {
|
if (mHbmProvider != null) {
|
||||||
if (mGhbmView != null) {
|
mHbmProvider.enableHbm(mHbmType, surface, () -> {
|
||||||
mGhbmView.drawIlluminationDot(mSensorRect);
|
if (mGhbmView != null) {
|
||||||
}
|
mGhbmView.drawIlluminationDot(mSensorRect);
|
||||||
if (onIlluminatedRunnable != null) {
|
}
|
||||||
// No framework API can reliably tell when a frame reaches the panel. A timeout
|
if (onIlluminatedRunnable != null) {
|
||||||
// is the safest solution.
|
// No framework API can reliably tell when a frame reaches the panel. A timeout
|
||||||
postDelayed(onIlluminatedRunnable, mOnIlluminatedDelayMs);
|
// is the safest solution.
|
||||||
} else {
|
postDelayed(onIlluminatedRunnable, mOnIlluminatedDelayMs);
|
||||||
Log.w(TAG, "doIlluminate | onIlluminatedRunnable is null");
|
} else {
|
||||||
}
|
Log.w(TAG, "doIlluminate | onIlluminatedRunnable is null");
|
||||||
});
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -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);
|
||||||
}
|
}
|
||||||
mHbmProvider.disableHbm(null /* onHbmDisabled */);
|
if (mHbmProvider != null) {
|
||||||
|
mHbmProvider.disableHbm(null /* onHbmDisabled */);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user