diff --git a/modules/templates/helper.go b/modules/templates/helper.go index 67ef1f7b4..db1323f3d 100644 --- a/modules/templates/helper.go +++ b/modules/templates/helper.go @@ -9,6 +9,7 @@ import ( "container/list" "encoding/json" "fmt" + "html" "html/template" "mime" "path/filepath" @@ -162,6 +163,7 @@ func NewFuncMap() []template.FuncMap { "UnescapeLocale": func(str string) string { return strings.NewReplacer("\\;", ";", "\\#", "#").Replace(str) }, + "Escape": Escape, }} } @@ -180,6 +182,11 @@ func Str2html(raw string) template.HTML { return template.HTML(markup.Sanitize(raw)) } +// Escape escapes a HTML string +func Escape(raw string) string { + return html.EscapeString(raw) +} + // List traversings the list func List(l *list.List) chan interface{} { e := l.Front() diff --git a/templates/repo/search.tmpl b/templates/repo/search.tmpl index 19a9d4474..3ddc5de86 100644 --- a/templates/repo/search.tmpl +++ b/templates/repo/search.tmpl @@ -14,7 +14,7 @@ {{if .Keyword}}

- {{.i18n.Tr "repo.search.results" .Keyword .RepoLink .RepoName | Str2html}} + {{.i18n.Tr "repo.search.results" (.Keyword|Escape) .RepoLink .RepoName | Str2html }}