diff --git a/app/src/main/java/se/leap/bitmaskclient/BaseConfigurationWizard.java b/app/src/main/java/se/leap/bitmaskclient/BaseConfigurationWizard.java
index f35d903199725e1cc6a32430fa6f713a7161582d..4f6163bc9c476bef53877347d6cb0386c38a0e20 100644
--- a/app/src/main/java/se/leap/bitmaskclient/BaseConfigurationWizard.java
+++ b/app/src/main/java/se/leap/bitmaskclient/BaseConfigurationWizard.java
@@ -368,9 +368,7 @@ public abstract class BaseConfigurationWizard extends Activity
     }
 
     /**
-     * Once selected a provider, this fragment offers the user to log in,
-     * use it anonymously (if possible)
-     * or cancel his/her election pressing the back button.
+     * Shows an error dialog, if configuring of a provider failed.
      *
      * @param reason_to_fail
      */
diff --git a/app/src/main/java/se/leap/bitmaskclient/Dashboard.java b/app/src/main/java/se/leap/bitmaskclient/Dashboard.java
index a47b8767d9ce010afa25c8eee2d22cec50920455..3f1663d001a09b3569dc6c64d6a3dd999e1d1e1d 100644
--- a/app/src/main/java/se/leap/bitmaskclient/Dashboard.java
+++ b/app/src/main/java/se/leap/bitmaskclient/Dashboard.java
@@ -349,8 +349,12 @@ public class Dashboard extends Activity implements ProviderAPIResultReceiver.Rec
     }
 
     public void sessionDialog(Bundle resultData) {
-        FragmentTransaction transaction = fragment_manager.removePreviousFragment(SessionDialog.TAG);
-        SessionDialog.getInstance(provider, resultData).show(transaction, SessionDialog.TAG);
+        try {
+            FragmentTransaction transaction = fragment_manager.removePreviousFragment(SessionDialog.TAG);
+            SessionDialog.getInstance(provider, resultData).show(transaction, SessionDialog.TAG);
+        } catch (IllegalStateException e) {
+            e.printStackTrace();
+        }
     }
 
     private void switchProvider() {