diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index 466ca88d9b..dd701a36df 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -485,10 +485,10 @@ class Core { if (ops.size() == 0) state.batchCompleted(folder.id, priority, sequence); - else // Check account/folder + else // abort state.error(new OperationCanceledException()); } finally { - Log.i(folder.name + " end process state=" + state); + Log.i(folder.name + " end process state=" + state + " pending=" + ops.size()); } } @@ -3398,6 +3398,9 @@ class Core { "This operation is not allowed on a closed folder".equals(ex.getMessage()))) recoverable = false; + if (ex instanceof OperationCanceledException) + recoverable = false; + thread.interrupt(); yield(); }