diff --git a/app/src/main/java/com/beemdevelopment/aegis/crypto/KeyStoreHandle.java b/app/src/main/java/com/beemdevelopment/aegis/crypto/KeyStoreHandle.java index a94edf88..5cb1c89b 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/crypto/KeyStoreHandle.java +++ b/app/src/main/java/com/beemdevelopment/aegis/crypto/KeyStoreHandle.java @@ -63,9 +63,9 @@ public class KeyStoreHandle { return generator.generateKey(); } catch (ProviderException e) { // a ProviderException can occur at runtime with buggy Keymaster HAL implementations - // so if this was caused by a KeyStoreException, throw a KeyStoreHandleException instead + // so if this was caused by an android.security.KeyStoreException, throw a KeyStoreHandleException instead Throwable cause = e.getCause(); - if (cause instanceof KeyStoreException) { + if (cause != null && cause.getClass().getName().equals("android.security.KeyStoreException")) { throw new KeyStoreHandleException(cause); } throw e;