Skip to content

Markdown.ToHtml throws InvalidOperationException "A block is already being replaced" #841

@mschessler

Description

@mschessler

Tested Version: newest commit d1233ff on main

grafik

grafik

Reproducer:

var pipeline = new MarkdownPipelineBuilder().UseAdvancedExtensions().Build();
var result = Markdown.ToHtml(">[!kk]\r\n[!kk]", pipeline);

Stacktrace:

at Markdig.Parsers.InlineProcessor.ReplaceParentContainer(ContainerBlock previousParentContainer, ContainerBlock newParentContainer) in \src\Markdig\Parsers\InlineProcessor.cs:line 219
at Markdig.Extensions.Alerts.AlertInlineParser.Match(InlineProcessor processor, StringSlice& slice) in \src\Markdig\Extensions\Alerts\AlertInlineParser.cs:line 123
at Markdig.Parsers.InlineProcessor.ProcessInlineLeaf(LeafBlock leafBlock) in \src\Markdig\Parsers\InlineProcessor.cs:line 273
at Markdig.Parsers.MarkdownParser.ProcessInlines(InlineProcessor inlineProcessor, MarkdownDocument document) in \src\Markdig\Parsers\MarkdownParser.cs:line 172
at Markdig.Parsers.MarkdownParser.Parse(String text, MarkdownPipeline pipeline, MarkdownParserContext context) in \src\Markdig\Parsers\MarkdownParser.cs:line 75
at Markdig.Markdown.ToHtml(String markdown, MarkdownPipeline pipeline, MarkdownParserContext context) in \src\Markdig\Markdown.cs:line 101
at FuzzTest.Program.Main(String[] args) in \FuzzingTargets\MarkdigFuzzer\Program.cs:line 13

Credit: Found with Sharpfuzz

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions