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

Commit e9010cb4 authored by Austin Delgado's avatar Austin Delgado
Browse files

Add check for empty vendor acquired strings

Interpret empty vendor acquired strings as null to match existing
behavior for null acquired strings

Test: atest com.android.server.biometrics
Flag: EXEMPT bugfix
Bug: 374848821
Change-Id: I93b92750572a812f4993b7123fb94a689ab5debc
parent f915f34c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -189,7 +189,7 @@ public class FingerprintCallback {
            mEnrollmentCallback.onAcquired(acquireInfo == FINGERPRINT_ACQUIRED_GOOD);
        }
        final String msg = getAcquiredString(context, acquireInfo, vendorCode);
        if (msg == null || msg.isEmpty()) {
        if (msg == null) {
            return;
        }
        // emulate HAL 2.1 behavior and send real acquiredInfo
+2 −5
Original line number Diff line number Diff line
@@ -1517,7 +1517,7 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing
     */
    public static String getAcquiredString(Context context, int acquireInfo, int vendorCode) {
        switch (acquireInfo) {
            case FINGERPRINT_ACQUIRED_GOOD:
            case FINGERPRINT_ACQUIRED_GOOD, FINGERPRINT_ACQUIRED_START:
                return null;
            case FINGERPRINT_ACQUIRED_PARTIAL:
                return context.getString(
@@ -1546,13 +1546,10 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing
            case FINGERPRINT_ACQUIRED_VENDOR: {
                String[] msgArray = context.getResources().getStringArray(
                        com.android.internal.R.array.fingerprint_acquired_vendor);
                if (vendorCode < msgArray.length) {
                if (vendorCode < msgArray.length && !msgArray[vendorCode].isEmpty()) {
                    return msgArray[vendorCode];
                }
            }
                break;
            case FINGERPRINT_ACQUIRED_START:
                return null;
        }
        Slog.w(TAG, "Invalid acquired message: " + acquireInfo + ", " + vendorCode);
        return null;