text := ctx.PopRenderedString()
- // All ast.Heading nodes are guaranteed to have an attribute called "id"
- // that is an array of bytes that encode a valid string.
- anchori, _ := n.AttributeString("id")
- anchor := anchori.([]byte)
+ var anchor []byte
+ if anchori, ok := n.AttributeString("id"); ok {
+ anchor, _ = anchori.([]byte)
+ }
page, pageInner := render.GetPageAndPageInner(ctx)
`)
// emoji
+
b.AssertFileContent("public/p7/index.html", `
<li><a href="#a-snake-emoji">A 🐍 emoji</a></li>
`)
}
+
+func TestIssue13416(t *testing.T) {
+ t.Parallel()
+
+ files := `
+-- hugo.toml --
+disableKinds = ['page','rss','section','sitemap','taxonomy','term']
+-- layouts/index.html --
+Content:{{ .Content }}|
+-- layouts/_default/_markup/render-heading.html --
+-- content/_index.md --
+---
+title: home
+---
+#
+`
+
+ b := hugolib.Test(t, files)
+
+ b.AssertFileExists("public/index.html", true)
+}