| Index: third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.cpp
|
| diff --git a/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.cpp b/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.cpp
|
| index e37795ac23d1f47a5d024f958271a9cc5993463d..a8511a0fa78abc38215c43e8df81deb2ca79ed8d 100644
|
| --- a/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.cpp
|
| +++ b/third_party/WebKit/Source/core/xml/parser/XMLDocumentParser.cpp
|
| @@ -1022,10 +1022,11 @@ void XMLDocumentParser::startElementNs(const AtomicString& localName, const Atom
|
| else
|
| pushCurrentNode(newElement);
|
|
|
| - if (isHTMLHtmlElement(*newElement))
|
| + // Note: |insertedByParser| will perform dispatching if this is an
|
| + // HTMLHtmlElement.
|
| + if (isHTMLHtmlElement(*newElement) && isFirstElement) {
|
| toHTMLHtmlElement(*newElement).insertedByParser();
|
| -
|
| - if (!m_parsingFragment && isFirstElement && document()->frame()) {
|
| + } else if (!m_parsingFragment && isFirstElement && document()->frame()) {
|
| document()->frame()->loader().dispatchDocumentElementAvailable();
|
| document()->frame()->loader().runScriptsAtDocumentElementAvailable();
|
| // runScriptsAtDocumentElementAvailable might have invalidated the document.
|
|
|