diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index 30b8c83d5e..a4088a7b7f 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -266,11 +266,6 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences start(current, current.accountState.isEnabled(current.enabled), false); } } else { - TupleAccountNetworkState prev = accountStates.get(index); - Core.State state = coreStates.get(current.accountState.id); - if (state != null) - state.setNetworkState(current.networkState); - boolean reload = false; boolean sync = current.command.getBoolean("sync", false); boolean force = current.command.getBoolean("force", false); @@ -280,6 +275,16 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences break; } + if (reload && force) { + Log.i("### update network state " + current); + current.networkState = ConnectionHelper.getNetworkState(ServiceSynchronize.this); + } + + TupleAccountNetworkState prev = accountStates.get(index); + Core.State state = coreStates.get(current.accountState.id); + if (state != null) + state.setNetworkState(current.networkState); + accountStates.remove(index); // Some networks disallow email server connections: