Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f54a1370 authored by Kevin Chyn's avatar Kevin Chyn
Browse files

Prevent GenerateChallenge being dropped in some corner cases

Fixes: 169387113
Test: Enter face settings, enroll, leave face settings, enter
      face settings, remove enrollment, re-enroll
Change-Id: I323606dea6ea92599695466bbffeb4d1541e8c85
parent 75e16a5e
Loading
Loading
Loading
Loading
+9 −11
Original line number Diff line number Diff line
@@ -519,21 +519,19 @@ class Face10 implements IHwBinder.DeathRecipient {
            @NonNull String opPackageName) {
        mHandler.post(() -> {
            if (mCurrentChallengeOwner != null) {
                Slog.w(TAG, "Current challenge owner: " + mCurrentChallengeOwner
                        + ", interrupted by: " + opPackageName);
                final ClientMonitorCallbackConverter listener =
                        mCurrentChallengeOwner.getListener();
                if (listener == null) {
                    Slog.w(TAG, "Null listener, skip sending interruption callback");
                    return;
                }

                Slog.w(TAG, "Current challenge owner: " + mCurrentChallengeOwner
                        + ", listener: " + listener
                        + ", interrupted by: " + opPackageName);
                if (listener != null) {
                    try {
                        listener.onChallengeInterrupted(mSensorId);
                    } catch (RemoteException e) {
                        Slog.e(TAG, "Unable to notify challenge interrupted", e);
                    }
                }
            }

            final FaceGenerateChallengeClient client = new FaceGenerateChallengeClient(mContext,
                    mLazyDaemon, token, new ClientMonitorCallbackConverter(receiver), opPackageName,