diff --git a/src/libs/actions/Session/index.ts b/src/libs/actions/Session/index.ts
index f384e38f6d55..013d86049150 100644
--- a/src/libs/actions/Session/index.ts
+++ b/src/libs/actions/Session/index.ts
@@ -856,7 +856,7 @@ function handleExitToNavigation(exitTo: Routes | HybridAppRoute) {
waitForUserSignIn().then(() => {
Navigation.waitForProtectedRoutes().then(() => {
const url = NativeModules.HybridAppModule ? Navigation.parseHybridAppUrl(exitTo) : exitTo;
- Navigation.navigate(url, CONST.NAVIGATION.TYPE.FORCED_UP);
+ Navigation.navigate(url);
});
});
});
diff --git a/src/pages/ValidateLoginPage/index.tsx b/src/pages/ValidateLoginPage/index.tsx
index edc8b61c82b0..2289547afe56 100644
--- a/src/pages/ValidateLoginPage/index.tsx
+++ b/src/pages/ValidateLoginPage/index.tsx
@@ -19,6 +19,10 @@ function ValidateLoginPage({
if (session?.authToken) {
// If already signed in, do not show the validate code if not on web,
// because we don't want to block the user with the interstitial page.
+ if (exitTo) {
+ Session.handleExitToNavigation(exitTo);
+ return;
+ }
Navigation.goBack();
} else {
Session.signInWithValidateCodeAndNavigate(Number(accountID), validateCode, '', exitTo);
diff --git a/src/pages/ValidateLoginPage/index.website.tsx b/src/pages/ValidateLoginPage/index.website.tsx
index 7ce46ee11b14..866b061d964f 100644
--- a/src/pages/ValidateLoginPage/index.website.tsx
+++ b/src/pages/ValidateLoginPage/index.website.tsx
@@ -34,7 +34,7 @@ function ValidateLoginPage({
}
Session.initAutoAuthState(autoAuthState);
- if (isSignedIn || !login) {
+ if (isSignedIn || (!login && !exitTo)) {
if (exitTo) {
Session.handleExitToNavigation(exitTo);
}
@@ -64,8 +64,8 @@ function ValidateLoginPage({
<>
{autoAuthState === CONST.AUTO_AUTH_STATE.FAILED && }
{autoAuthState === CONST.AUTO_AUTH_STATE.JUST_SIGNED_IN && is2FARequired && !isSignedIn && }
- {autoAuthState === CONST.AUTO_AUTH_STATE.JUST_SIGNED_IN && isSignedIn && }
- {autoAuthState === CONST.AUTO_AUTH_STATE.NOT_STARTED && (
+ {autoAuthState === CONST.AUTO_AUTH_STATE.JUST_SIGNED_IN && isSignedIn && !exitTo && }
+ {autoAuthState === CONST.AUTO_AUTH_STATE.NOT_STARTED && !exitTo && (