From 5c58d3e314259f8ba4e61c257fa69c71ed152631 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 29 Mar 2022 21:19:56 +0200 Subject: [PATCH] Skip stopped orphan threads --- .../main/java/eu/faircode/email/ServiceSynchronize.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index c2cb86cd33..f63e28529e 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -1366,7 +1366,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences state.setBackoff(CONNECT_BACKOFF_START); if (account.backoff_until != null) db.account().setAccountBackoff(account.id, null); - while (state.isRunning() && currentThread.equals(accountThread)) { + while (state.isRunning()) { state.reset(); Log.i(account.name + " run thread=" + currentThread); @@ -2454,8 +2454,11 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences accountThread = db.account().getAccountThread(account.id); } - if (!currentThread.equals(accountThread) && accountThread != null) - Log.e(account.name + " orphan thread id=" + currentThread + "/" + accountThread); + if (!currentThread.equals(accountThread) && accountThread != null) { + String msg = account.name + " orphan thread id=" + currentThread + "/" + accountThread; + EntityLog.log(this, msg); + Log.e(msg); + } } finally { EntityLog.log(this, EntityLog.Type.Account, account, account.name + " stopped running=" + state.isRunning());