From 66481697573b5a8c3fa3ddd101cf417f8512c2dd Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 7 Nov 2020 14:26:00 +0100 Subject: [PATCH] Fetch copied messages --- app/src/main/java/eu/faircode/email/Core.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index d16790e2f7..04fd66c1a6 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -1014,7 +1014,7 @@ class Core { itarget.appendMessages(icopies.toArray(new Message[0])); } else { for (Message imessage : map.keySet()) { - Log.i("Move seen=" + seen + " unflag=" + unflag + " flags=" + imessage.getFlags() + " can=" + canMove); + Log.i((copy ? "Copy" : "Move") + " seen=" + seen + " unflag=" + unflag + " flags=" + imessage.getFlags() + " can=" + canMove); // Mark read if (seen && !imessage.isSet(Flags.Flag.SEEN) && flags.contains(Flags.Flag.SEEN)) @@ -1047,7 +1047,7 @@ class Core { } // Fetch appended/copied when needed - boolean fetch = !"connected".equals(target.state); + boolean fetch = (copy || !"connected".equals(target.state)); if (draft || fetch) try { Log.i(target.name + " moved message fetch=" + fetch); @@ -1060,8 +1060,10 @@ class Core { if (uid != null) { if (draft) { Message icopy = itarget.getMessageByUID(uid); - if (icopy == null) + if (icopy == null) { + Log.w(target.name + " Gone uid=" + uid); continue; + } // Mark read if (seen && !icopy.isSet(Flags.Flag.SEEN) && flags.contains(Flags.Flag.SEEN)) @@ -1077,6 +1079,7 @@ class Core { } if (fetch) { + Log.w(target.name + " Fetching uid=" + uid); JSONArray fargs = new JSONArray(); fargs.put(uid); onFetch(context, fargs, target, istore, itarget, state);