Update to latest CommonMark specs. Fix new corner cases when parsing inline links

This commit is contained in:
Alexandre Mutel
2016-09-18 13:24:19 +02:00
parent e1032e5094
commit d6d7b398e4
3 changed files with 1525 additions and 1428 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -39,7 +39,7 @@ SOFTWARE.
<#@ output extension=".cs" #><#
var specFiles = new KeyValuePair<string, string>[] {
// new KeyValuePair<string, string>("https://raw.githubusercontent.com/jgm/CommonMark/master/spec.txt", string.Empty),
new KeyValuePair<string, string>("https://raw.githubusercontent.com/jgm/CommonMark/91e045ca370258903ed138450373043a496ec64b/spec.txt", string.Empty), // 0.26 specs
new KeyValuePair<string, string>("https://raw.githubusercontent.com/jgm/CommonMark/cfc84164475d3bec8be9482c21a705adc93a54f5/spec.txt", string.Empty), // 0.26 specs
new KeyValuePair<string, string>(Host.ResolvePath("PipeTableSpecs.md"), "pipetables|advanced"),
new KeyValuePair<string, string>(Host.ResolvePath("FootnotesSpecs.md"), "footnotes|advanced"),
new KeyValuePair<string, string>(Host.ResolvePath("GenericAttributesSpecs.md"), "attributes|advanced"),

View File

@@ -211,6 +211,7 @@ namespace Markdig.Parsers.Inlines
// compact reference link/image,
// or shortcut reference link/image
var parentDelimiter = openParent.Parent;
var savedText = text;
switch (text.CurrentChar)
{
case '(':
@@ -253,9 +254,10 @@ namespace Markdig.Parsers.Inlines
return true;
}
break;
default:
text = savedText;
goto default;
default:
var labelSpan = SourceSpan.Empty;
string label = null;
bool isLabelSpanLocal = true;