aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2024-03-24 00:21:57 +0800
committerGitHub <noreply@github.com>2024-03-23 17:21:57 +0100
commit2172b38d505fa9586edf5da0d4aad7307dc92b7d (patch)
tree61468a76dab714d8a4862585b4037fb122203713
parent01f736f68c5620957419c609bbf78f8e5ce76359 (diff)
downloadgitea-2172b38d505fa9586edf5da0d4aad7307dc92b7d.tar.gz
gitea-2172b38d505fa9586edf5da0d4aad7307dc92b7d.zip
Escape paths for find file correctly (#30026) (#30031)
Backport #30026
-rw-r--r--routers/web/repo/find.go5
1 files changed, 3 insertions, 2 deletions
diff --git a/routers/web/repo/find.go b/routers/web/repo/find.go
index daefe59c8f..9d03e4b4c9 100644
--- a/routers/web/repo/find.go
+++ b/routers/web/repo/find.go
@@ -8,6 +8,7 @@ import (
"code.gitea.io/gitea/modules/base"
"code.gitea.io/gitea/modules/context"
+ "code.gitea.io/gitea/modules/util"
)
const (
@@ -17,7 +18,7 @@ const (
// FindFiles render the page to find repository files
func FindFiles(ctx *context.Context) {
path := ctx.Params("*")
- ctx.Data["TreeLink"] = ctx.Repo.RepoLink + "/src/" + path
- ctx.Data["DataLink"] = ctx.Repo.RepoLink + "/tree-list/" + path
+ ctx.Data["TreeLink"] = ctx.Repo.RepoLink + "/src/" + util.PathEscapeSegments(path)
+ ctx.Data["DataLink"] = ctx.Repo.RepoLink + "/tree-list/" + util.PathEscapeSegments(path)
ctx.HTML(http.StatusOK, tplFindFiles)
}