From 51679a61b2d8b5446ba8e4e1854f9738fd9e48ca Mon Sep 17 00:00:00 2001 From: M66B Date: Fri, 10 May 2019 18:33:23 +0200 Subject: [PATCH] Prevent crash --- app/src/main/java/eu/faircode/email/FragmentAccount.java | 8 +++++--- .../main/java/eu/faircode/email/FragmentQuickSetup.java | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentAccount.java b/app/src/main/java/eu/faircode/email/FragmentAccount.java index 1f77d551c9..460df675af 100644 --- a/app/src/main/java/eu/faircode/email/FragmentAccount.java +++ b/app/src/main/java/eu/faircode/email/FragmentAccount.java @@ -63,6 +63,7 @@ import androidx.annotation.Nullable; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.Group; import androidx.fragment.app.FragmentTransaction; +import androidx.lifecycle.Lifecycle; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import com.android.colorpicker.ColorPickerDialog; @@ -1370,9 +1371,10 @@ public class FragmentAccount extends FragmentBase { Log.e(ex); if (ex instanceof OperationCanceledException || ex instanceof AuthenticatorException || - ex instanceof IOException) - Snackbar.make(view, Helper.formatThrowable(ex), Snackbar.LENGTH_LONG).show(); - else + ex instanceof IOException) { + if (getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.RESUMED)) + Snackbar.make(view, Helper.formatThrowable(ex), Snackbar.LENGTH_LONG).show(); + } else Helper.unexpectedError(getContext(), getViewLifecycleOwner(), ex); } finally { btnAuthorize.setEnabled(true); diff --git a/app/src/main/java/eu/faircode/email/FragmentQuickSetup.java b/app/src/main/java/eu/faircode/email/FragmentQuickSetup.java index fdd79c2d0f..1c021fc5b7 100644 --- a/app/src/main/java/eu/faircode/email/FragmentQuickSetup.java +++ b/app/src/main/java/eu/faircode/email/FragmentQuickSetup.java @@ -53,6 +53,7 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.constraintlayout.widget.Group; +import androidx.lifecycle.Lifecycle; import com.google.android.material.snackbar.Snackbar; import com.google.android.material.textfield.TextInputLayout; @@ -514,9 +515,10 @@ public class FragmentQuickSetup extends FragmentBase { Log.e(ex); if (ex instanceof OperationCanceledException || ex instanceof AuthenticatorException || - ex instanceof IOException) - Snackbar.make(view, Helper.formatThrowable(ex), Snackbar.LENGTH_LONG).show(); - else + ex instanceof IOException) { + if (getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.RESUMED)) + Snackbar.make(view, Helper.formatThrowable(ex), Snackbar.LENGTH_LONG).show(); + } else Helper.unexpectedError(getContext(), getViewLifecycleOwner(), ex); } finally { etEmail.setEnabled(true);