From 341491e1c32d7effc19b8ca2b37caca63552542c Mon Sep 17 00:00:00 2001 From: Henri Sivonen Date: Wed, 30 Nov 2011 15:11:38 +0200 Subject: [PATCH] Bug 699365 - Avoid asserting when the parser command is "external-resource". r=smaug. --- parser/html/nsHtml5Parser.cpp | 6 ++++-- parser/htmlparser/tests/crashtests/699365-1.html | 2 ++ parser/htmlparser/tests/crashtests/crashtests.list | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 parser/htmlparser/tests/crashtests/699365-1.html diff --git a/parser/html/nsHtml5Parser.cpp b/parser/html/nsHtml5Parser.cpp index 6cbf073fad9b..23c6e9281491 100644 --- a/parser/html/nsHtml5Parser.cpp +++ b/parser/html/nsHtml5Parser.cpp @@ -130,6 +130,7 @@ nsHtml5Parser::SetCommand(const char* aCommand) { NS_ASSERTION(!strcmp(aCommand, "view") || !strcmp(aCommand, "view-source") || + !strcmp(aCommand, "external-resource") || !strcmp(aCommand, kLoadAsData), "Unsupported parser command"); } @@ -719,8 +720,9 @@ nsHtml5Parser::MarkAsNotScriptCreated(const char* aCommand) } #ifdef DEBUG else { - NS_ASSERTION(!nsCRT::strcmp(aCommand, "view"), - "Unsupported parser command!"); + NS_ASSERTION(!nsCRT::strcmp(aCommand, "view") || + !nsCRT::strcmp(aCommand, "external-resource"), + "Unsupported parser command!"); } #endif mStreamParser = new nsHtml5StreamParser(mExecutor, this, mode); diff --git a/parser/htmlparser/tests/crashtests/699365-1.html b/parser/htmlparser/tests/crashtests/699365-1.html new file mode 100644 index 000000000000..a0795abb6a76 --- /dev/null +++ b/parser/htmlparser/tests/crashtests/699365-1.html @@ -0,0 +1,2 @@ + +
diff --git a/parser/htmlparser/tests/crashtests/crashtests.list b/parser/htmlparser/tests/crashtests/crashtests.list index abc26eff0609..2289553274b0 100644 --- a/parser/htmlparser/tests/crashtests/crashtests.list +++ b/parser/htmlparser/tests/crashtests/crashtests.list @@ -49,3 +49,4 @@ load 591330-1.html load 650501-1.xhtml load 696651-1.html load view-source:699347-1.xml +load 699365-1.html