diff --git a/src/webpage/login.ts b/src/webpage/login.ts index 6d4e7cc..78e89f1 100644 --- a/src/webpage/login.ts +++ b/src/webpage/login.ts @@ -81,7 +81,7 @@ export async function makeLogin( return; } const redir = new URLSearchParams(window.location.search).get("goback"); - if (redir) { + if (redir && (!URL.canParse(redir) || new URL(redir).host === window.location.host)) { window.location.href = redir; } else { window.location.href = "/channels/@me"; diff --git a/src/webpage/register.ts b/src/webpage/register.ts index 517add1..52b23a4 100644 --- a/src/webpage/register.ts +++ b/src/webpage/register.ts @@ -37,7 +37,7 @@ export async function makeRegister( return; } const redir = new URLSearchParams(window.location.search).get("goback"); - if (redir) { + if (redir && (!URL.canParse(redir) || new URL(redir).host === window.location.host)) { window.location.href = redir; } else { window.location.href = "/channels/@me";