From 542d17bbfa8d815cae8d781b0fae963d31cbf21f Mon Sep 17 00:00:00 2001 From: Ajay Bhargav Baaskaran Date: Tue, 22 Jan 2019 12:48:43 -0800 Subject: [PATCH] Fix tag grouping for tags with no name \n\nCommit migrated from https://github.com/dotnet/aspnetcore-tooling/commit/e24c9b25a47fc4bf3a6c1e8de2710de0ee960612 --- .../src/Legacy/HtmlMarkupParser.cs | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/Razor/Microsoft.AspNetCore.Razor.Language/src/Legacy/HtmlMarkupParser.cs b/src/Razor/Microsoft.AspNetCore.Razor.Language/src/Legacy/HtmlMarkupParser.cs index 85f7540dd9..02c7eec22d 100644 --- a/src/Razor/Microsoft.AspNetCore.Razor.Language/src/Legacy/HtmlMarkupParser.cs +++ b/src/Razor/Microsoft.AspNetCore.Razor.Language/src/Legacy/HtmlMarkupParser.cs @@ -480,7 +480,8 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy var endTagStart = CurrentStart; var endTag = ParseEndTag(mode, out var endTagName, out var _); - if (endTagName != null && string.Equals(CurrentStartTagName, endTagName, StringComparison.OrdinalIgnoreCase)) + Debug.Assert(endTagName != null); + if (string.Equals(CurrentStartTagName, endTagName, StringComparison.OrdinalIgnoreCase)) { // Happy path. Found a matching start tag. Create the element and reset the builder. var tracker = _tagTracker.Pop(); @@ -520,7 +521,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy // We can't possibly have a matching start tag. Context.ErrorSink.OnError( RazorDiagnosticFactory.CreateParsing_UnexpectedEndTag( - new SourceSpan(SourceLocationTracker.Advance(endTagStartLocation, ", < @DateTime.Now>, ' or '

' etc. Assert(SyntaxKind.OpenAngle); - tagName = null; + tagName = string.Empty; SyntaxToken tagNameToken = null; var openAngleToken = EatCurrentToken(); // Accept '<'