Optimise regexp usage (#1502)

* Optimise regexp usage

* Revert regexp removal

* Atleast use the semioptimised version
This commit is contained in:
Jack
2021-10-29 20:29:01 +01:00
committed by GitHub
parent cc2a9b8d8e
commit f0a11cac5d
2 changed files with 11 additions and 4 deletions

View File

@@ -124,6 +124,11 @@ func RenderMarkdown(raw string) string {
return buf.String()
}
var (
_sanitizeReSrcMatch = regexp.MustCompile(`(?i)^/img/emoji`)
_sanitizeReAltTitleMatch = regexp.MustCompile(`:\S+:`)
)
func sanitize(raw string) string {
p := bluemonday.StrictPolicy()
@@ -146,8 +151,8 @@ func sanitize(raw string) string {
p.AllowElementsContent("p")
// Allow img tags from the the local emoji directory only
p.AllowAttrs("src").Matching(regexp.MustCompile(`(?i)^/img/emoji`)).OnElements("img")
p.AllowAttrs("alt", "title").Matching(regexp.MustCompile(`:\S+:`)).OnElements("img")
p.AllowAttrs("src").Matching(_sanitizeReSrcMatch).OnElements("img")
p.AllowAttrs("alt", "title").Matching(_sanitizeReAltTitleMatch).OnElements("img")
p.AllowAttrs("class").OnElements("img")
// Allow bold