diff --git a/app/src/main/java/eu/faircode/email/ServiceAuthenticator.java b/app/src/main/java/eu/faircode/email/ServiceAuthenticator.java index 2383c461ed..c5d2cbf259 100644 --- a/app/src/main/java/eu/faircode/email/ServiceAuthenticator.java +++ b/app/src/main/java/eu/faircode/email/ServiceAuthenticator.java @@ -136,7 +136,8 @@ public class ServiceAuthenticator extends Authenticator { Log.e(ex); } - if (expiration != null && expiration - keep_alive < new Date().getTime()) + long slack = Math.min(keep_alive, 30 * 60 * 1000L); + if (expiration != null && expiration - slack < new Date().getTime()) throw new IllegalStateException(Log.TOKEN_REFRESH_REQUIRED); } diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index 5280842868..f1c63c6338 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -2005,7 +2005,8 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences } // Check token expiration - iservice.check(); + if (!account.isTransient(this)) + iservice.check(); // Sends store NOOP if (EmailService.SEPARATE_STORE_CONNECTION) {