retrigger key selection if openpgp key was deleted

This commit is contained in:
Daniel Gultsch 2016-10-19 11:53:55 +02:00
parent 7226fc0010
commit dce8149aae
2 changed files with 15 additions and 3 deletions

View File

@ -259,8 +259,13 @@ public class PgpEngine {
account); account);
return; return;
case OpenPgpApi.RESULT_CODE_ERROR: case OpenPgpApi.RESULT_CODE_ERROR:
logError(account, (OpenPgpError) result.getParcelableExtra(OpenPgpApi.RESULT_ERROR)); OpenPgpError error = result.getParcelableExtra(OpenPgpApi.RESULT_ERROR);
callback.error(R.string.unable_to_connect_to_keychain, account); if (error != null && "signing subkey not found!".equals(error.getMessage())) {
callback.error(0,account);
} else {
logError(account, error);
callback.error(R.string.unable_to_connect_to_keychain, null);
}
} }
} }
}); });

View File

@ -584,7 +584,14 @@ public abstract class XmppActivity extends Activity {
@Override @Override
public void error(int error, Account account) { public void error(int error, Account account) {
displayErrorDialog(error); if (error == 0 && account != null) {
account.setPgpSignId(0);
account.unsetPgpSignature();
xmppConnectionService.databaseBackend.updateAccount(account);
choosePgpSignId(account);
} else {
displayErrorDialog(error);
}
} }
}); });
} }