diff --git a/modules/caddyhttp/templates/frontmatter.go b/modules/caddyhttp/templates/frontmatter.go index f9d5fb2..dd05217 100644 --- a/modules/caddyhttp/templates/frontmatter.go +++ b/modules/caddyhttp/templates/frontmatter.go @@ -56,6 +56,7 @@ func extractFrontMatter(input string) (map[string]interface{}, string, error) { if index >= 0 { fmEndFenceStart = index fmEndFence = fence + break } } if fmEndFenceStart < 0 { diff --git a/modules/caddyhttp/templates/tplcontext_test.go b/modules/caddyhttp/templates/tplcontext_test.go index f90b851..32c6a16 100644 --- a/modules/caddyhttp/templates/tplcontext_test.go +++ b/modules/caddyhttp/templates/tplcontext_test.go @@ -316,6 +316,17 @@ title: Welcome expect: `Welcome`, body: "\n### Test", }, + { + // yaml with non-fence '...' line after closing fence (i.e. first matching closing fence should be used) + input: `--- +title: Welcome +--- +### Test +... +yeah`, + expect: `Welcome`, + body: "\n### Test\n...\nyeah", + }, { // toml input: `+++