Browse Source

Fix redirect url of legacy commits route (#2825)

tags/v1.21.12.1
Morlinest Lauris BH 7 years ago
parent
commit
1f04c00e2f
2 changed files with 4 additions and 12 deletions
  1. +3
    -1
      integrations/links_test.go
  2. +1
    -11
      modules/context/repo.go

+ 3
- 1
integrations/links_test.go View File

@@ -7,8 +7,10 @@ package integrations
import (
"fmt"
"net/http"
"path"
"testing"

"code.gitea.io/gitea/modules/setting"
api "code.gitea.io/sdk/gitea"

"github.com/stretchr/testify/assert"
@@ -50,7 +52,7 @@ func TestRedirectsNoLogin(t *testing.T) {
for link, redirectLink := range redirects {
req := NewRequest(t, "GET", link)
resp := MakeRequest(t, req, http.StatusFound)
assert.EqualValues(t, redirectLink, RedirectURL(t, resp))
assert.EqualValues(t, path.Join(setting.AppSubURL, redirectLink), RedirectURL(t, resp))
}
}



+ 1
- 11
modules/context/repo.go View File

@@ -521,16 +521,6 @@ func getRefName(ctx *Context, pathType RepoRefType) string {
return ""
}

// URL to redirect to for deprecated URL scheme
func repoRefRedirect(ctx *Context) string {
urlPath := ctx.Req.URL.String()
idx := strings.LastIndex(urlPath, ctx.Params("*"))
if idx < 0 {
idx = len(urlPath)
}
return path.Join(urlPath[:idx], ctx.Repo.BranchNameSubURL())
}

// RepoRefByType handles repository reference name for a specific type
// of repository reference
func RepoRefByType(refType RepoRefType) macaron.Handler {
@@ -617,7 +607,7 @@ func RepoRefByType(refType RepoRefType) macaron.Handler {

if refType == RepoRefLegacy {
// redirect from old URL scheme to new URL scheme
ctx.Redirect(repoRefRedirect(ctx))
ctx.Redirect(path.Join(setting.AppSubURL, strings.TrimSuffix(ctx.Req.URL.String(), ctx.Params("*")), ctx.Repo.BranchNameSubURL()))
return
}
}


Loading…
Cancel
Save