From 17ca261449c01b960911b516b72f04cb6f6a4fd8 Mon Sep 17 00:00:00 2001 From: Mathias Leppich Date: Tue, 1 Apr 2014 23:14:31 +0200 Subject: [PATCH] optimisation: only fix fenced code blocks if the extensions parser flag is set... ;-) --- markdown.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/markdown.go b/markdown.go index 174bef8..606b53b 100644 --- a/markdown.go +++ b/markdown.go @@ -324,15 +324,16 @@ func firstPass(p *parser, input []byte) []byte { end++ } - // when last line was none blank and a fenced code block comes after - if !lastLineWasBlank && beg >= lastFencedCodeBlockEnd { - i := p.fencedCode(&out, append(input[beg:], '\n'), false) - if i > 0 { - out.WriteByte('\n') // need to inject additional linebreak - lastFencedCodeBlockEnd = beg + i + if p.flags&EXTENSION_FENCED_CODE != 0 { + // when last line was none blank and a fenced code block comes after + if !lastLineWasBlank && beg >= lastFencedCodeBlockEnd { + if i := p.fencedCode(&out, append(input[beg:], '\n'), false); i > 0 { + out.WriteByte('\n') // need to inject additional linebreak + lastFencedCodeBlockEnd = beg + i + } } + lastLineWasBlank = end == beg } - lastLineWasBlank = end == beg // add the line body if present if end > beg {