aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2014-04-17 16:19:49 +0200
committerVincent Breitmoser <valodim@mugenguild.com>2014-04-17 16:19:49 +0200
commit86d9266a445351b5a6c8fa89a6766b7481651e9f (patch)
treef161ab964330a6e2bfe76eb70689d137720134fa /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java
parentf6e7b92ced34bad78f47820f35df750c65a386ab (diff)
downloadopen-keychain-86d9266a445351b5a6c8fa89a6766b7481651e9f.tar.gz
open-keychain-86d9266a445351b5a6c8fa89a6766b7481651e9f.tar.bz2
open-keychain-86d9266a445351b5a6c8fa89a6766b7481651e9f.zip
NotFoundExceptions for all getGeneric-type methods
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java36
1 files changed, 24 insertions, 12 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java
index 14f7b6810..7913df6c8 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/DeleteKeyDialogFragment.java
@@ -89,18 +89,30 @@ public class DeleteKeyDialogFragment extends DialogFragment {
if (masterKeyIds.length == 1) {
long masterKeyId = masterKeyIds[0];
- HashMap<String, Object> data = new ProviderHelper(activity).getUnifiedData(masterKeyId, new String[]{
- KeyRings.USER_ID,
- KeyRings.HAS_ANY_SECRET
- }, new int[]{ProviderHelper.FIELD_TYPE_STRING, ProviderHelper.FIELD_TYPE_INTEGER});
- String userId = (String) data.get(KeyRings.USER_ID);
- boolean hasSecret = ((Long) data.get(KeyRings.HAS_ANY_SECRET)) == 1;
-
- // Set message depending on which key it is.
- mMainMessage.setText(getString(
- hasSecret ? R.string.secret_key_deletion_confirmation
- : R.string.public_key_deletetion_confirmation,
- userId));
+ try {
+ HashMap<String, Object> data = new ProviderHelper(activity).getUnifiedData(
+ masterKeyId, new String[]{
+ KeyRings.USER_ID,
+ KeyRings.HAS_ANY_SECRET
+ }, new int[]{
+ ProviderHelper.FIELD_TYPE_STRING,
+ ProviderHelper.FIELD_TYPE_INTEGER
+ }
+ );
+ String userId = (String) data.get(KeyRings.USER_ID);
+ boolean hasSecret = ((Long) data.get(KeyRings.HAS_ANY_SECRET)) == 1;
+
+ // Set message depending on which key it is.
+ mMainMessage.setText(getString(
+ hasSecret ? R.string.secret_key_deletion_confirmation
+ : R.string.public_key_deletetion_confirmation,
+ userId
+ ));
+ } catch (ProviderHelper.NotFoundException e) {
+ sendMessageToHandler(MESSAGE_ERROR, null);
+ dismiss();
+ return null;
+ }
} else {
mMainMessage.setText(R.string.key_deletion_confirmation_multi);
}