diff --git a/app/src/extra/java/eu/faircode/email/Send.java b/app/src/extra/java/eu/faircode/email/Send.java index 218595cd9c..0f28b60369 100644 --- a/app/src/extra/java/eu/faircode/email/Send.java +++ b/app/src/extra/java/eu/faircode/email/Send.java @@ -185,6 +185,9 @@ public class Send { ws.sendBinary(message); seq++; + + if (!intf.isRunning()) + throw new InterruptedException(); } Log.i("Send EOF size=" + size); @@ -261,5 +264,7 @@ public class Send { public interface IProgress { void onProgress(int percentage); + + boolean isRunning(); } } diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogInsertLink.java b/app/src/main/java/eu/faircode/email/FragmentDialogInsertLink.java index 4aed835014..55ec850445 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogInsertLink.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogInsertLink.java @@ -425,6 +425,11 @@ public class FragmentDialogInsertLink extends FragmentDialogBase { args.putInt("progress", percentage); postProgress(null, args); } + + @Override + public boolean isRunning() { + return (pbUpload != null); + } }); } }