diff --git a/src/Markdig.Tests/TestSourcePosition.cs b/src/Markdig.Tests/TestSourcePosition.cs index 09a9b6cf..3cd0e97e 100644 --- a/src/Markdig.Tests/TestSourcePosition.cs +++ b/src/Markdig.Tests/TestSourcePosition.cs @@ -698,7 +698,7 @@ public void TestAttributesForHeading() [Test] public void TestMathematicsInline() { - // 01 23456789AB + // 01 23456789ABCDEF Check("0\n012 $abcd$ 321", @" paragraph ( 0, 0) 0-15 literal ( 0, 0) 0-0 @@ -707,6 +707,13 @@ public void TestMathematicsInline() math ( 1, 4) 6-11 attributes ( 0, 0) 0--1 literal ( 1,10) 12-15 +", "mathematics"); + + // 012345678 + Check("$ abcd $", @" +paragraph ( 0, 0) 0-7 +math ( 0, 0) 0-7 +attributes ( 0, 0) 0--1 ", "mathematics"); } diff --git a/src/Markdig/Extensions/Mathematics/MathInlineParser.cs b/src/Markdig/Extensions/Mathematics/MathInlineParser.cs index fabd30e6..8ac94cbd 100644 --- a/src/Markdig/Extensions/Mathematics/MathInlineParser.cs +++ b/src/Markdig/Extensions/Mathematics/MathInlineParser.cs @@ -152,7 +152,7 @@ public override bool Match(InlineProcessor processor, ref StringSlice slice) // Create a new MathInline var inline = new MathInline() { - Span = new SourceSpan(processor.GetSourcePosition(startPosition, out int line, out int column), processor.GetSourcePosition(end)), + Span = new SourceSpan(processor.GetSourcePosition(startPosition, out int line, out int column), processor.GetSourcePosition(slice.Start - 1)), Line = line, Column = column, Delimiter = match,