From 211f67d31136771ccdfefd2570f5bc56bd41667e Mon Sep 17 00:00:00 2001 From: David Vavra Date: Mon, 21 Mar 2022 17:40:50 +0100 Subject: [PATCH] Fix for a crash in logout (closes #263) (#303) * Fix for ActivityNotFoundException (closes #166) * Change RESULT_OK to RESULT_CANCELED * Fix crash in logout * Test for a case when FragmentManager is destroyed * Revert "Test for a case when FragmentManager is destroyed" This reverts commit 1dfebb070e855c84a2ed4d09e290e06adef4a531. --- .../main/java/com/okta/oidc/OktaResultFragment.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/library/src/main/java/com/okta/oidc/OktaResultFragment.java b/library/src/main/java/com/okta/oidc/OktaResultFragment.java index 471994f2..ccc0d258 100644 --- a/library/src/main/java/com/okta/oidc/OktaResultFragment.java +++ b/library/src/main/java/com/okta/oidc/OktaResultFragment.java @@ -22,6 +22,7 @@ import androidx.annotation.RestrictTo; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentActivity; +import androidx.fragment.app.FragmentManager; import com.okta.oidc.net.request.web.WebRequest; @@ -58,10 +59,12 @@ public static void addLogoutFragment(WebRequest request, OktaResultFragment fragment = new OktaResultFragment(); fragment.logoutIntent = createAuthIntent(activity, request.toUri(), customTabOptions, browsers); - activity.getSupportFragmentManager() - .beginTransaction() - .add(fragment, AUTHENTICATION_REQUEST) - .commit(); + FragmentManager fragmentManager = activity.getSupportFragmentManager(); + if (!fragmentManager.isDestroyed()) { + fragmentManager.beginTransaction() + .add(fragment, AUTHENTICATION_REQUEST) + .commit(); + } } @Override