From f827d335be9397069b2f31f03a7566888c5b6dd6 Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 28 Nov 2018 21:00:19 +0100 Subject: [PATCH] Fixed stop after reconnect back-off --- .../java/eu/faircode/email/ServiceSynchronize.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index 3ea8a7a649..aca41a7a38 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -2319,7 +2319,7 @@ public class ServiceSynchronize extends LifecycleService { } private void start() { - EntityLog.log(ServiceSynchronize.this, "Main start queued=" + queued); + EntityLog.log(ServiceSynchronize.this, "Main start"); state = new ServiceState(); state.runnable(new Runnable() { @@ -2347,10 +2347,10 @@ public class ServiceSynchronize extends LifecycleService { try { long backoff = RECONNECT_BACKOFF - ago; EntityLog.log(ServiceSynchronize.this, "Main backoff=" + (backoff / 1000)); - state.acquire(backoff); + if (state.acquire(backoff)) + return; } catch (InterruptedException ex) { Log.w(Helper.TAG, "main backoff " + ex.toString()); - return; } // Start monitoring outbox @@ -2570,8 +2570,8 @@ public class ServiceSynchronize extends LifecycleService { semaphore.acquire(); } - void acquire(long milliseconds) throws InterruptedException { - semaphore.tryAcquire(milliseconds, TimeUnit.MILLISECONDS); + boolean acquire(long milliseconds) throws InterruptedException { + return semaphore.tryAcquire(milliseconds, TimeUnit.MILLISECONDS); } void error() {