From d9dd7a75f3c19f7c4fe0e061b86032be3642d14e Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 4 Oct 2021 19:45:05 +0200 Subject: [PATCH] Local folders cannot sync --- app/src/main/java/eu/faircode/email/ApplicationEx.java | 3 ++- app/src/main/java/eu/faircode/email/Core.java | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ApplicationEx.java b/app/src/main/java/eu/faircode/email/ApplicationEx.java index 470bb7d89a..c8df53999a 100644 --- a/app/src/main/java/eu/faircode/email/ApplicationEx.java +++ b/app/src/main/java/eu/faircode/email/ApplicationEx.java @@ -561,7 +561,8 @@ public class ApplicationEx extends Application if (inbox == null && "inbox".equalsIgnoreCase(folder.name)) folder.type = EntityFolder.INBOX; - if (!EntityFolder.USER.equals(folder.type) && + if (!folder.local && + !EntityFolder.USER.equals(folder.type) && !EntityFolder.SYSTEM.equals(folder.type)) { EntityLog.log(context, "Repairing " + account.name + ":" + folder.type); folder.setProperties(); diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index ec6247b59b..57dffb677a 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -2165,7 +2165,7 @@ class Core { EntityFolder folder = db.folder().getFolderByType(account.id, type); if (folder == null) { folder = db.folder().getFolderByName(account.id, fullName); - if (folder != null) { + if (folder != null && !folder.local) { Log.e("Updated " + account.host + " " + type + "=" + fullName); folder.type = type; folder.setProperties(); @@ -2831,6 +2831,12 @@ class Core { " sync unseen=" + sync_unseen + " flagged=" + sync_flagged + " delete unseen=" + delete_unseen + " kept=" + sync_kept); + if (folder.local) { + folder.synchronize = false; + db.folder().setFolderSynchronize(folder.id, folder.synchronize); + return; + } + db.folder().setFolderSyncState(folder.id, "syncing"); // Check uid validity