From 9c439a7c999eed4cc336932bb2d621de26370dfd Mon Sep 17 00:00:00 2001 From: zeripath Date: Thu, 17 Sep 2020 19:24:23 +0100 Subject: [PATCH] Support slashes in release tags (#12864) Fix #12861 Signed-off-by: Andrew Thornton --- routers/repo/release.go | 2 +- routers/routes/routes.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/routers/repo/release.go b/routers/repo/release.go index c93c8f5d6..8cd46e850 100644 --- a/routers/repo/release.go +++ b/routers/repo/release.go @@ -132,7 +132,7 @@ func SingleRelease(ctx *context.Context) { writeAccess := ctx.Repo.CanWrite(models.UnitTypeReleases) ctx.Data["CanCreateRelease"] = writeAccess && !ctx.Repo.Repository.IsArchived - release, err := models.GetRelease(ctx.Repo.Repository.ID, ctx.Params("tag")) + release, err := models.GetRelease(ctx.Repo.Repository.ID, ctx.Params("*")) if err != nil { if models.IsErrReleaseNotExist(err) { ctx.NotFound("GetRelease", err) diff --git a/routers/routes/routes.go b/routers/routes/routes.go index 247835c06..5345a1017 100644 --- a/routers/routes/routes.go +++ b/routers/routes/routes.go @@ -822,9 +822,9 @@ func RegisterRoutes(m *macaron.Macaron) { m.Group("/:username/:reponame", func() { m.Group("/releases", func() { m.Get("/", repo.Releases) - m.Get("/tag/:tag", repo.SingleRelease) + m.Get("/tag/*", repo.SingleRelease) m.Get("/latest", repo.LatestRelease) - }, repo.MustBeNotEmpty, context.RepoRef()) + }, repo.MustBeNotEmpty, context.RepoRefByType(context.RepoRefTag)) m.Group("/releases", func() { m.Get("/new", repo.NewRelease) m.Post("/new", bindIgnErr(auth.NewReleaseForm{}), repo.NewReleasePost)