From ea683de6154cd584bcad6e1c3478df402799fb58 Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 18 Sep 2019 11:30:08 +0200 Subject: [PATCH] Prevent crash --- .../java/eu/faircode/email/FragmentMessages.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index c7a4388257..9e4ee07ea4 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -3984,13 +3984,16 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. Log.i("PGP result=" + result.getIntExtra(OpenPgpApi.RESULT_CODE, OpenPgpApi.RESULT_CODE_ERROR)); switch (result.getIntExtra(OpenPgpApi.RESULT_CODE, OpenPgpApi.RESULT_CODE_ERROR)) { case OpenPgpApi.RESULT_CODE_SUCCESS: + EntityMessage message = db.message().getMessage(id); + if (message == null) + return null; + if (inline) { try { db.beginTransaction(); // Write decrypted body - EntityMessage m = db.message().getMessage(id); - Helper.writeText(m.getFile(context), + Helper.writeText(message.getFile(context), decrypted.toString().replace("\0", "")); db.message().setMessageStored(id, new Date().getTime()); @@ -4013,11 +4016,10 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. db.beginTransaction(); // Write decrypted body - EntityMessage m = db.message().getMessage(id); String html = parts.getHtml(context); if (html != null) html = html.replace("\0", ""); - Helper.writeText(m.getFile(context), html); + Helper.writeText(message.getFile(context), html); // Remove previously decrypted attachments for (EntityAttachment local : attachments) @@ -4061,7 +4063,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. break; case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED: - message = id; + FragmentMessages.this.message = id; return result.getParcelableExtra(OpenPgpApi.RESULT_INTENT); case OpenPgpApi.RESULT_CODE_ERROR: