diff --git a/services/core/java/com/android/server/biometrics/BiometricServiceBase.java b/services/core/java/com/android/server/biometrics/BiometricServiceBase.java index 808f8c21cc8de..5a6ab4e594245 100644 --- a/services/core/java/com/android/server/biometrics/BiometricServiceBase.java +++ b/services/core/java/com/android/server/biometrics/BiometricServiceBase.java @@ -978,6 +978,10 @@ public abstract class BiometricServiceBase extends SystemService } protected void addLockoutResetCallback(IBiometricServiceLockoutResetCallback callback) { + if (callback == null) { + Slog.w(getTag(), "Null LockoutResetCallback"); + return; + } mHandler.post(() -> { final LockoutResetMonitor monitor = new LockoutResetMonitor(callback); if (!mLockoutMonitors.contains(monitor)) { diff --git a/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java b/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java index 8520f5aa0632a..d90f3afd8dca4 100644 --- a/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java +++ b/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java @@ -330,6 +330,7 @@ public class FingerprintService extends BiometricServiceBase { @Override public void addLockoutResetCallback(final IBiometricServiceLockoutResetCallback callback) throws RemoteException { + checkPermission(USE_BIOMETRIC_INTERNAL); FingerprintService.super.addLockoutResetCallback(callback); }