diff --git a/app/src/main/java/eu/faircode/email/ActivitySetup.java b/app/src/main/java/eu/faircode/email/ActivitySetup.java index 49088d9179..82feccd931 100644 --- a/app/src/main/java/eu/faircode/email/ActivitySetup.java +++ b/app/src/main/java/eu/faircode/email/ActivitySetup.java @@ -721,7 +721,7 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac ex instanceof SecurityException); Log.unexpectedError(getSupportFragmentManager(), ex, !expected); } - }.setInterruptable(false).execute(this, args, "setup:export"); + }.execute(this, args, "setup:export"); } private void handleImport(Intent data, String password) { @@ -1111,7 +1111,7 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac Log.unexpectedError(getSupportFragmentManager(), ex, !expected); } } - }.setInterruptable(false).execute(this, args, "setup:import"); + }.execute(this, args, "setup:import"); } private void handleImportCertificate(Intent data) { diff --git a/app/src/main/java/eu/faircode/email/FragmentFolders.java b/app/src/main/java/eu/faircode/email/FragmentFolders.java index 8009baff12..fa8a0575ab 100644 --- a/app/src/main/java/eu/faircode/email/FragmentFolders.java +++ b/app/src/main/java/eu/faircode/email/FragmentFolders.java @@ -999,9 +999,7 @@ public class FragmentFolders extends FragmentBase { protected void onException(Bundle args, Throwable ex) { Log.unexpectedError(getParentFragmentManager(), ex); } - - - }.setInterruptable(false).execute(this, args, "folder:export"); + }.execute(this, args, "folder:export"); } public static class FragmentDialogApply extends FragmentDialogBase { diff --git a/app/src/main/java/eu/faircode/email/SimpleTask.java b/app/src/main/java/eu/faircode/email/SimpleTask.java index d334afb41e..f1c59bd42f 100644 --- a/app/src/main/java/eu/faircode/email/SimpleTask.java +++ b/app/src/main/java/eu/faircode/email/SimpleTask.java @@ -51,12 +51,10 @@ import java.util.concurrent.Future; public abstract class SimpleTask implements LifecycleObserver { private boolean log = true; private boolean count = true; - private boolean interruptable = true; private String name; private long started; private boolean reported; - private boolean interrupted; private Lifecycle.State state; private Future future; private ExecutorService localExecutor; @@ -67,7 +65,6 @@ public abstract class SimpleTask implements LifecycleObserver { private static final int MAX_WAKELOCK = 30 * 60 * 1000; // milliseconds private static final int REPORT_AFTER = 15 * 60 * 1000; // milliseconds - private static final int CANCEL_AFTER = MAX_WAKELOCK; // milliseconds static final String ACTION_TASK_COUNT = BuildConfig.APPLICATION_ID + ".ACTION_TASK_COUNT"; @@ -83,11 +80,6 @@ public abstract class SimpleTask implements LifecycleObserver { return this; } - public SimpleTask setInterruptable(boolean interruptable) { - this.interruptable = interruptable; - return this; - } - public SimpleTask setExecutor(ExecutorService executor) { this.localExecutor = executor; return this; @@ -272,7 +264,6 @@ public abstract class SimpleTask implements LifecycleObserver { private void cleanup(Context context) { started = 0; reported = false; - interrupted = false; future = null; synchronized (tasks) { tasks.remove(this); @@ -288,15 +279,7 @@ public abstract class SimpleTask implements LifecycleObserver { for (SimpleTask task : tasks) if (task.future != null && !task.future.isDone()) { long elapsed = now - task.started; - if (elapsed > CANCEL_AFTER && !task.interrupted) { - task.interrupted = true; - if (task.interruptable && - task.future != null && !task.future.isDone()) { - Log.e("Interrupting task " + task + - " tasks=" + getCountLocked() + "/" + tasks.size()); - task.future.cancel(true); - } - } else if (elapsed > REPORT_AFTER && !task.reported) { + if (elapsed > REPORT_AFTER && !task.reported) { task.reported = true; Log.e("Long running task " + task + " tasks=" + getCountLocked() + "/" + tasks.size());