aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-08-13 16:37:28 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-08-13 16:37:28 +0200
commit38da2af0e89ca05f2a01ed08801dee635784168e (patch)
treef90f3190edb27d92e76f8a1dae6b9eeea6ddd890 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java
parente4c86747926f6c9ae8c3eafd55409107886565b9 (diff)
downloadopen-keychain-38da2af0e89ca05f2a01ed08801dee635784168e.tar.gz
open-keychain-38da2af0e89ca05f2a01ed08801dee635784168e.tar.bz2
open-keychain-38da2af0e89ca05f2a01ed08801dee635784168e.zip
Better error handling for passphrase cache if key is missing
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java26
1 files changed, 15 insertions, 11 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java
index 33deddd81..7e08f6b7c 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptActivity.java
@@ -450,20 +450,24 @@ public class EncryptActivity extends DrawerActivity implements EncryptActivityIn
return false;
}
- if (mSigningKeyId != 0 && PassphraseCacheService.getCachedPassphrase(this, mSigningKeyId) == null) {
- PassphraseDialogFragment.show(this, mSigningKeyId,
- new Handler() {
- @Override
- public void handleMessage(Message message) {
- if (message.what == PassphraseDialogFragment.MESSAGE_OKAY) {
- // restart
- startEncrypt();
+ try {
+ if (mSigningKeyId != 0 && PassphraseCacheService.getCachedPassphrase(this, mSigningKeyId) == null) {
+ PassphraseDialogFragment.show(this, mSigningKeyId,
+ new Handler() {
+ @Override
+ public void handleMessage(Message message) {
+ if (message.what == PassphraseDialogFragment.MESSAGE_OKAY) {
+ // restart
+ startEncrypt();
+ }
}
}
- }
- );
+ );
- return false;
+ return false;
+ }
+ } catch (PassphraseCacheService.KeyNotFoundException e) {
+ Log.e(Constants.TAG, "Key not found!", e);
}
}
return true;