try to make openpgp a little more reliable
This commit is contained in:
parent
5477ff1aea
commit
07e6873025
|
@ -54,9 +54,18 @@ public class PgpEngine {
|
||||||
switch (result.getIntExtra(OpenPgpApi.RESULT_CODE,
|
switch (result.getIntExtra(OpenPgpApi.RESULT_CODE,
|
||||||
OpenPgpApi.RESULT_CODE_ERROR)) {
|
OpenPgpApi.RESULT_CODE_ERROR)) {
|
||||||
case OpenPgpApi.RESULT_CODE_SUCCESS:
|
case OpenPgpApi.RESULT_CODE_SUCCESS:
|
||||||
message.setBody(os.toString());
|
try {
|
||||||
message.setEncryption(Message.ENCRYPTION_DECRYPTED);
|
os.flush();
|
||||||
callback.success(message);
|
if (message.getEncryption() == Message.ENCRYPTION_PGP) {
|
||||||
|
message.setBody(os.toString());
|
||||||
|
message.setEncryption(Message.ENCRYPTION_DECRYPTED);
|
||||||
|
callback.success(message);
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
callback.error(R.string.openpgp_error, message);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED:
|
case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED:
|
||||||
callback.userInputRequried((PendingIntent) result
|
callback.userInputRequried((PendingIntent) result
|
||||||
|
@ -64,6 +73,8 @@ public class PgpEngine {
|
||||||
message);
|
message);
|
||||||
return;
|
return;
|
||||||
case OpenPgpApi.RESULT_CODE_ERROR:
|
case OpenPgpApi.RESULT_CODE_ERROR:
|
||||||
|
OpenPgpError error = result.getParcelableExtra(OpenPgpApi.RESULT_ERROR);
|
||||||
|
Log.d("xmppService",error.getMessage());
|
||||||
callback.error(R.string.openpgp_error, message);
|
callback.error(R.string.openpgp_error, message);
|
||||||
return;
|
return;
|
||||||
default:
|
default:
|
||||||
|
@ -153,14 +164,20 @@ public class PgpEngine {
|
||||||
switch (result.getIntExtra(OpenPgpApi.RESULT_CODE,
|
switch (result.getIntExtra(OpenPgpApi.RESULT_CODE,
|
||||||
OpenPgpApi.RESULT_CODE_ERROR)) {
|
OpenPgpApi.RESULT_CODE_ERROR)) {
|
||||||
case OpenPgpApi.RESULT_CODE_SUCCESS:
|
case OpenPgpApi.RESULT_CODE_SUCCESS:
|
||||||
StringBuilder encryptedMessageBody = new StringBuilder();
|
try {
|
||||||
String[] lines = os.toString().split("\n");
|
os.flush();
|
||||||
for (int i = 3; i < lines.length - 1; ++i) {
|
StringBuilder encryptedMessageBody = new StringBuilder();
|
||||||
encryptedMessageBody.append(lines[i].trim());
|
String[] lines = os.toString().split("\n");
|
||||||
|
for (int i = 3; i < lines.length - 1; ++i) {
|
||||||
|
encryptedMessageBody.append(lines[i].trim());
|
||||||
|
}
|
||||||
|
message.setEncryptedBody(encryptedMessageBody
|
||||||
|
.toString());
|
||||||
|
callback.success(message);
|
||||||
|
} catch (IOException e) {
|
||||||
|
callback.error(R.string.openpgp_error, message);
|
||||||
}
|
}
|
||||||
message.setEncryptedBody(encryptedMessageBody
|
|
||||||
.toString());
|
|
||||||
callback.success(message);
|
|
||||||
break;
|
break;
|
||||||
case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED:
|
case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED:
|
||||||
callback.userInputRequried((PendingIntent) result
|
callback.userInputRequried((PendingIntent) result
|
||||||
|
|
Loading…
Reference in a new issue