diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2021-08-19 11:30:50 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2021-08-22 12:47:47 +0200 |
commit | bc0743ed8eafc3c2d9b21a1e8f1b05d64b85e8ba (patch) | |
tree | ebdc81de4e7a616d00043cb6c6b5a8a2f2e6db5b | |
parent | ffa2fe61172aa0d892234b23d1497c77a6a7f5c4 (diff) |
Prevent minifier from removing quoutes around post-processed attributes
Fixes #8884
-rw-r--r-- | hugolib/resource_chain_test.go | 7 | ||||
-rw-r--r-- | resources/postpub/postpub.go | 6 |
2 files changed, 12 insertions, 1 deletions
diff --git a/hugolib/resource_chain_test.go b/hugolib/resource_chain_test.go index 834fe4357..d40d4c02e 100644 --- a/hugolib/resource_chain_test.go +++ b/hugolib/resource_chain_test.go @@ -457,8 +457,10 @@ func TestResourceChainPostProcess(t *testing.T) { b := newTestSitesBuilder(t) b.WithConfigFile("toml", `[minify] + minifyOutput = true [minify.tdewolff] [minify.tdewolff.html] + keepQuotes = false keepWhitespace = false`) b.WithContent("page1.md", "---\ntitle: Page1\n---") b.WithContent("page2.md", "---\ntitle: Page2\n---") @@ -473,6 +475,9 @@ HELLO: {{ $hello.RelPermalink }} HELLO: {{ $hello.RelPermalink }}|Integrity: {{ $hello.Data.Integrity }}|MediaType: {{ $hello.MediaType.Type }} HELLO2: Name: {{ $hello.Name }}|Content: {{ $hello.Content }}|Title: {{ $hello.Title }}|ResourceType: {{ $hello.ResourceType }} +// Issue #8884 +<a href="hugo.rocks">foo</a> +<a href="{{ $hello.RelPermalink }}" integrity="{{ $hello.Data.Integrity}}">Hello</a> `+strings.Repeat("a b", rnd.Intn(10)+1)+` @@ -484,6 +489,8 @@ End.`) `Start. HELLO: /hello.min.a2d1cb24f24b322a7dad520414c523e9.html|Integrity: md5-otHLJPJLMip9rVIEFMUj6Q==|MediaType: text/html HELLO2: Name: hello.html|Content: <h1>Hello World!</h1>|Title: hello.html|ResourceType: text +<a href=hugo.rocks>foo</a> +<a href="/hello.min.a2d1cb24f24b322a7dad520414c523e9.html" integrity="md5-otHLJPJLMip9rVIEFMUj6Q==">Hello</a> End.`) b.AssertFileContent("public/page1/index.html", `HELLO: /hello.min.a2d1cb24f24b322a7dad520414c523e9.html`) diff --git a/resources/postpub/postpub.go b/resources/postpub/postpub.go index 85b4221fd..c11dda577 100644 --- a/resources/postpub/postpub.go +++ b/resources/postpub/postpub.go @@ -39,7 +39,11 @@ type PostPublishedResource interface { const ( PostProcessPrefix = "__h_pp_l1" - PostProcessSuffix = "__e" + + // The suffix has an '=' in it to prevent the minifier to remove any enclosing + // quoutes around the attribute values. + // See issue #8884. + PostProcessSuffix = "__e=" ) func NewPostPublishResource(id int, r resource.Resource) PostPublishedResource { |