From 2172b38d505fa9586edf5da0d4aad7307dc92b7d Mon Sep 17 00:00:00 2001 From: wxiaoguang Date: Sun, 24 Mar 2024 00:21:57 +0800 Subject: [PATCH] Escape paths for find file correctly (#30026) (#30031) Backport #30026 --- routers/web/repo/find.go | 5 +++-- 1 file 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) }