From e20e528f5ed73e5a3d9589ec008fd065e727c826 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Wed, 13 Jan 2016 03:12:24 +0100 Subject: fix symmetric decryption with backup code (fixes #1677) --- .../keychain/ui/PassphraseDialogActivity.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java') diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java index 5b0dd0d57..a973a67e0 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java @@ -368,7 +368,6 @@ public class PassphraseDialogActivity extends FragmentActivity { @Override public void onClick(View v) { - final Passphrase passphrase; if (mRequiredInput.mType == RequiredInputType.BACKUP_CODE) { StringBuilder backupCodeInput = new StringBuilder(26); for (EditText editText : mBackupCodeEditText) { @@ -380,16 +379,18 @@ public class PassphraseDialogActivity extends FragmentActivity { } backupCodeInput.deleteCharAt(backupCodeInput.length() - 1); - passphrase = new Passphrase(backupCodeInput.toString()); - } else { - passphrase = new Passphrase(mPassphraseEditText); + Passphrase passphrase = new Passphrase(backupCodeInput.toString()); + finishCaching(passphrase); + + return; } + final Passphrase passphrase = new Passphrase(mPassphraseEditText); final int timeToLiveSeconds = mTimeToLiveSpinner.getSelectedTimeToLive(); // Early breakout if we are dealing with a symmetric key if (mSecretRing == null) { - if ( ! mRequiredInput.mSkipCaching) { + if (!mRequiredInput.mSkipCaching) { PassphraseCacheService.addCachedPassphrase(getActivity(), Constants.key.symmetric, Constants.key.symmetric, passphrase, getString(R.string.passp_cache_notif_pwd), timeToLiveSeconds); -- cgit v1.2.3