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);
return;
case OpenPgpApi.RESULT_CODE_ERROR:
logError(account, (OpenPgpError) result.getParcelableExtra(OpenPgpApi.RESULT_ERROR));
callback.error(R.string.unable_to_connect_to_keychain, account);
OpenPgpError error = result.getParcelableExtra(OpenPgpApi.RESULT_ERROR);
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
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);
}
}
});
}