Show source message on failure on cross account move

pull/194/head
M66B 5 years ago
parent bb68824e28
commit f912c9346f

@ -1025,13 +1025,31 @@ class Core {
Log.e(ex); Log.e(ex);
} }
} else { } else {
// Lookup added messages
Long found = findUid(context, ifolder, message.msgid, false); Long found = findUid(context, ifolder, message.msgid, false);
try {
db.beginTransaction();
if (found == null) { if (found == null) {
String msg = "Added message not found msgid=" + message.msgid; db.message().setMessageError(message.id, "Message not found in target folder");
Log.e(msg); db.message().setMessageUiHide(message.id, false);
throw new IllegalArgumentException(msg); } else {
// Mark source read
if (autoread)
EntityOperation.queue(context, message, EntityOperation.SEEN, true);
// Delete source
EntityOperation.queue(context, message, EntityOperation.DELETE);
} }
db.setTransactionSuccessful();
} finally {
db.endTransaction();
}
// Fetch target
if (found != null)
try { try {
Log.i(folder.name + " Fetching uid=" + found); Log.i(folder.name + " Fetching uid=" + found);
JSONArray fargs = new JSONArray(); JSONArray fargs = new JSONArray();
@ -1040,13 +1058,6 @@ class Core {
} catch (Throwable ex) { } catch (Throwable ex) {
Log.e(ex); Log.e(ex);
} }
// Mark source read
if (autoread)
EntityOperation.queue(context, message, EntityOperation.SEEN, true);
// Delete source
EntityOperation.queue(context, message, EntityOperation.DELETE);
} }
} }

Loading…
Cancel
Save