diff --git a/modules/markup/markdown/markdown.go b/modules/markup/markdown/markdown.go index ff78d7ea3a..fc704243e2 100644 --- a/modules/markup/markdown/markdown.go +++ b/modules/markup/markdown/markdown.go @@ -157,7 +157,8 @@ func RenderRaw(body []byte, urlPrefix string, wikiMarkdown bool) []byte { exts |= blackfriday.HardLineBreak } - body = blackfriday.Run(body, blackfriday.WithRenderer(renderer), blackfriday.WithExtensions(exts)) + // Need to normalize EOL to UNIX LF to have consistent results in rendering + body = blackfriday.Run(util.NormalizeEOL(body), blackfriday.WithRenderer(renderer), blackfriday.WithExtensions(exts)) return markup.SanitizeBytes(body) } diff --git a/modules/markup/markdown/markdown_test.go b/modules/markup/markdown/markdown_test.go index b29f870ce5..e80173c6cf 100644 --- a/modules/markup/markdown/markdown_test.go +++ b/modules/markup/markdown/markdown_test.go @@ -294,3 +294,25 @@ func TestTotal_RenderString(t *testing.T) { assert.Equal(t, testCases[i+1], line) } } + +func TestRender_RenderParagraphs(t *testing.T) { + test := func(t *testing.T, str string, cnt int) { + unix := []byte(str) + res := string(RenderRaw(unix, "", false)) + assert.Equal(t, strings.Count(res, "