From 06857affb1ef674be380b479d0633af6f2cb54e4 Mon Sep 17 00:00:00 2001 From: undefined Date: Tue, 7 Dec 2021 21:33:39 +0800 Subject: [PATCH] core: fix login redirect --- packages/hydrooj/package.json | 2 +- packages/hydrooj/src/handler/user.ts | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 6d3188a88..cb037ffff 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "3.2.10", + "version": "3.2.11", "bin": "bin/hydrooj.js", "main": "src/loader", "module": "src/loader", diff --git a/packages/hydrooj/src/handler/user.ts b/packages/hydrooj/src/handler/user.ts index a3f8128b9..4b4e4a369 100644 --- a/packages/hydrooj/src/handler/user.ts +++ b/packages/hydrooj/src/handler/user.ts @@ -125,9 +125,10 @@ class UserLoginHandler extends Handler { this.session.uid = udoc._id; this.session.scope = PERM.PERM_ALL.toString(); this.session.save = rememberme; - this.response.redirect = redirect || ((this.request.referer || '/login').endsWith('/login') - ? this.url('homepage') - : this.request.referer); + this.response.redirect = (redirect ? decodeURIComponent(redirect) : '') + || ((this.request.referer || '/login').endsWith('/login') + ? this.url('homepage') + : this.request.referer); } }