diff --git a/routers/user/auth.go b/routers/user/auth.go index 40687fca6f..031ac026bd 100644 --- a/routers/user/auth.go +++ b/routers/user/auth.go @@ -76,8 +76,15 @@ func SignIn(ctx *context.Context) { return } + redirectTo := ctx.Query("redirect_to") + if len(redirectTo) > 0 { + ctx.SetCookie("redirect_to", redirectTo, 0, setting.AppSubUrl) + } else { + redirectTo, _ = url.QueryUnescape(ctx.GetCookie("redirect_to")) + } + if isSucceed { - if redirectTo, _ := url.QueryUnescape(ctx.GetCookie("redirect_to")); len(redirectTo) > 0 { + if len(redirectTo) > 0 { ctx.SetCookie("redirect_to", "", -1, setting.AppSubUrl) ctx.Redirect(redirectTo) } else {