feat: add error handling for sessionStorage in redirect logic across multiple pages

This commit is contained in:
Linus Rath
2026-03-11 23:35:27 +01:00
parent f996ab77b8
commit 7848c90625
6 changed files with 8 additions and 8 deletions
+1 -1
View File
@@ -60,7 +60,7 @@ function OAuthCallbackInner() {
sessionStorage.removeItem('redirect_after_login');
redirectTo = saved;
}
} catch {}
} catch { /* sessionStorage may be unavailable */ }
router.push(redirectTo);
} else {
setError("token_exchange_failed");
+1 -1
View File
@@ -77,7 +77,7 @@ export default function CalendarPage() {
useEffect(() => {
if (!isAuthenticated) {
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch {}
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch { /* ignore */ }
router.push("/login");
} else if (!supportsCalendar) {
router.push("/");
+1 -1
View File
@@ -79,7 +79,7 @@ export default function ContactsPage() {
useEffect(() => {
if (!isAuthenticated) {
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch {}
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch { /* ignore */ }
router.push("/login");
}
}, [isAuthenticated, router]);
+3 -3
View File
@@ -100,7 +100,7 @@ export default function LoginPage() {
sessionStorage.removeItem('redirect_after_login');
redirectTo = saved;
}
} catch {}
} catch { /* ignore */ }
router.push(redirectTo);
}
}, [isAuthenticated, router]);
@@ -314,7 +314,7 @@ export default function LoginPage() {
sessionStorage.removeItem('redirect_after_login');
redirectTo = saved;
}
} catch {}
} catch { /* ignore */ }
router.push(redirectTo);
}
};
@@ -329,7 +329,7 @@ export default function LoginPage() {
sessionStorage.removeItem('redirect_after_login');
redirectTo = saved;
}
} catch {}
} catch { /* ignore */ }
router.push(redirectTo);
}
};
+1 -1
View File
@@ -264,7 +264,7 @@ export default function Home() {
// Redirect to login if not authenticated
useEffect(() => {
if (initialCheckDone && !isAuthenticated && !authLoading) {
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch {}
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch { /* ignore */ }
router.push('/login');
}
}, [initialCheckDone, isAuthenticated, authLoading, router]);
+1 -1
View File
@@ -35,7 +35,7 @@ export default function SettingsPage() {
useEffect(() => {
if (!isAuthenticated) {
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch {}
try { sessionStorage.setItem('redirect_after_login', window.location.pathname); } catch { /* ignore */ }
router.push('/login');
}
}, [isAuthenticated, router]);