summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Mccloskey <joshmccloskey@google.com>2021-10-04 23:25:47 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-10-04 23:25:47 +0000
commitdeacea49865f44aec0fd9dae10e48ed30c5e7dc3 (patch)
tree7e004979ed5f337c2cef27a00f63e10bd295b0fb
parent6e77619492acff335f15f052af9956b18d1ef145 (diff)
parentb5997d47aef24642c86120d8cb6190434561978f (diff)
downloadbase-deacea49865f44aec0fd9dae10e48ed30c5e7dc3.tar.gz
Fixed NPE in FingerprintAuthClient am: b5997d47ae
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15820591 Change-Id: I6054f60fbcf4c66a5c8958fb2427d9b55864359d
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java18
1 files changed, 11 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java
index 37ee76adeece..4400834efb3f 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/aidl/FingerprintAuthenticationClient.java
@@ -164,13 +164,17 @@ class FingerprintAuthenticationClient extends AuthenticationClient<ISession> imp
@Override
protected void stopHalOperation() {
UdfpsHelper.hideUdfpsOverlay(getSensorId(), mUdfpsOverlayController);
- try {
- mCancellationSignal.cancel();
- } catch (RemoteException e) {
- Slog.e(TAG, "Remote exception", e);
- onError(BiometricFingerprintConstants.FINGERPRINT_ERROR_HW_UNAVAILABLE,
- 0 /* vendorCode */);
- mCallback.onClientFinished(this, false /* success */);
+ if (mCancellationSignal != null) {
+ try {
+ mCancellationSignal.cancel();
+ } catch (RemoteException e) {
+ Slog.e(TAG, "Remote exception", e);
+ onError(BiometricFingerprintConstants.FINGERPRINT_ERROR_HW_UNAVAILABLE,
+ 0 /* vendorCode */);
+ mCallback.onClientFinished(this, false /* success */);
+ }
+ } else {
+ Slog.e(TAG, "cancellation signal was null");
}
}