From aff42755b10f70ca4e53feca4cf5a24930b1bf32 Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 6 Jan 2021 11:34:02 +0100 Subject: [PATCH] Prevent deleting temporary moved messages --- app/src/main/java/eu/faircode/email/DaoMessage.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/faircode/email/DaoMessage.java b/app/src/main/java/eu/faircode/email/DaoMessage.java index 763865f4d1..5bb27c242d 100644 --- a/app/src/main/java/eu/faircode/email/DaoMessage.java +++ b/app/src/main/java/eu/faircode/email/DaoMessage.java @@ -790,7 +790,13 @@ public interface DaoMessage { " AND NOT EXISTS" + " (SELECT * FROM operation" + " WHERE operation.message = message.id" + - " AND operation.name = '" + EntityOperation.ADD + "')") + " AND operation.name = '" + EntityOperation.ADD + "')"+ + " AND NOT EXISTS" + + " (SELECT * FROM operation o" + + " JOIN message m ON m.id = o.message" + + " WHERE o.account = message.account" + + " AND o.name = '" + EntityOperation.MOVE + "'" + + " AND m.msgid = message.msgid)") int deleteOrphans(long folder); @Query("SELECT id FROM message" +