From 9e60b4eabdea60d84e1cd613b614b8e376e9baea Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 6 Aug 2018 14:22:03 +0000 Subject: [PATCH] Fixes --- .../eu/faircode/email/EntityOperation.java | 3 --- .../eu/faircode/email/ServiceSynchronize.java | 21 ++++++++----------- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/EntityOperation.java b/app/src/main/java/eu/faircode/email/EntityOperation.java index 0fad3edf..7cb3ac9c 100644 --- a/app/src/main/java/eu/faircode/email/EntityOperation.java +++ b/app/src/main/java/eu/faircode/email/EntityOperation.java @@ -86,9 +86,6 @@ public class EntityOperation { return; } purged = dao.deleteOperations(message.id, name); - } else if (DELETE.equals(name)) { - if (message.uid == null) - return; } EntityOperation operation = new EntityOperation(); diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index a511687f..f35e938a 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -473,13 +473,6 @@ public class ServiceSynchronize extends LifecycleService { } catch (Throwable ex) { Log.e(Helper.TAG, folder.name + " " + ex + "\n" + Log.getStackTraceString(ex)); reportError(account.name, folder.name, ex); - - // Cascade up - try { - fstore.close(); - } catch (MessagingException e1) { - Log.w(Helper.TAG, folder.name + " " + e1 + "\n" + Log.getStackTraceString(e1)); - } } finally { if (shouldClose) if (ifolder != null && ifolder.isOpen()) { @@ -738,11 +731,13 @@ public class ServiceSynchronize extends LifecycleService { } else if (EntityOperation.DELETE.equals(op.name)) { // Delete message - Message imessage = ifolder.getMessageByUID(op.uid); - if (imessage == null) - throw new MessageRemovedException(); - imessage.setFlag(Flags.Flag.DELETED, true); - ifolder.expunge(); + if (op.uid != null) { + Message imessage = ifolder.getMessageByUID(op.uid); + if (imessage == null) + throw new MessageRemovedException(); + imessage.setFlag(Flags.Flag.DELETED, true); + ifolder.expunge(); + } message.deleteMessage(op.message); @@ -1031,6 +1026,8 @@ public class ServiceSynchronize extends LifecycleService { long id = MimeMessageEx.getId(imessage); message = db.message().getMessage(id); + if (message.folder != folder.id) + message = null; // Archive boolean update = (message != null); if (message == null) message = new EntityMessage();