Skip to content

HtmlParser.Parse throws InvalidOperationException #735

Description

@Metalnem

HtmlParser.Parse throws InvalidOperationException on some HTML inputs. Here's the full program to reproduce one such case:

using AngleSharp.Parser.Html;

namespace AngleSharp.Run
{
  public class Program
  {
    public static void Main(string[] args)
    {
      string html = @"<svg><!DOCTYPE html><<template>html><desc><template>><p>p</p></body></html>";
      new HtmlParser().Parse(html);
    }
  }
}

And here is the stack trace:

An unhandled exception of type 'System.InvalidOperationException' occurred in System.Collections.dll: 'Stack empty.'
   at System.Collections.Generic.Stack`1.ThrowForEmptyStack()
   at System.Collections.Generic.Stack`1.Peek()
   at AngleSharp.Parser.Html.HtmlParserExtensions.SelectMode(Element element, Boolean isLast, Stack`1 templateModes)
   at AngleSharp.Parser.Html.HtmlDomBuilder.Reset()
   at AngleSharp.Parser.Html.HtmlDomBuilder.InTemplate(HtmlToken token)
   at AngleSharp.Parser.Html.HtmlDomBuilder.InBody(HtmlToken token)
   at AngleSharp.Parser.Html.HtmlDomBuilder.Parse(HtmlParserOptions options)
   at AngleSharp.Run.Program.Main(String[] args) in 

Found via SharpFuzz.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions