Chromium Code Reviews| Index: third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp |
| diff --git a/third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp b/third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp |
| index f42fb4e0df901385d1afbbe97bd27dbda784d5ae..628b4ae7eb2afeb72930bf2964c8b51e73191bbf 100644 |
| --- a/third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp |
| +++ b/third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp |
| @@ -116,22 +116,22 @@ class HTMLTreeBuilder::CharacterTokenBuffer { |
| : m_characters(token->characters().impl()), |
| m_current(0), |
| m_end(token->characters().length()) { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| } |
| explicit CharacterTokenBuffer(const String& characters) |
| : m_characters(characters.impl()), |
| m_current(0), |
| m_end(characters.length()) { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| } |
| - ~CharacterTokenBuffer() { ASSERT(isEmpty()); } |
| + ~CharacterTokenBuffer() { DCHECK(isEmpty()); } |
| bool isEmpty() const { return m_current == m_end; } |
| void skipAtMostOneLeadingNewline() { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| if ((*m_characters)[m_current] == '\n') |
| ++m_current; |
| } |
| @@ -147,7 +147,7 @@ class HTMLTreeBuilder::CharacterTokenBuffer { |
| void skipRemaining() { m_current = m_end; } |
| StringView takeRemaining() { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| unsigned start = m_current; |
| m_current = m_end; |
| return StringView(m_characters.get(), start, m_end - start); |
| @@ -164,7 +164,7 @@ class HTMLTreeBuilder::CharacterTokenBuffer { |
| } |
| String takeRemainingWhitespace() { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| const unsigned start = m_current; |
| m_current = m_end; // One way or another, we're taking everything! |
| @@ -195,7 +195,7 @@ class HTMLTreeBuilder::CharacterTokenBuffer { |
| private: |
| template <bool characterPredicate(UChar)> |
| void skipLeading() { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| while (characterPredicate((*m_characters)[m_current])) { |
| if (++m_current == m_end) |
| return; |
| @@ -204,7 +204,7 @@ class HTMLTreeBuilder::CharacterTokenBuffer { |
| template <bool characterPredicate(UChar)> |
| StringView takeLeading() { |
| - ASSERT(!isEmpty()); |
| + DCHECK(!isEmpty()); |
| const unsigned start = m_current; |
| skipLeading<characterPredicate>(); |
| return StringView(m_characters.get(), start, m_current - start); |
| @@ -238,8 +238,8 @@ HTMLTreeBuilder::HTMLTreeBuilder(HTMLDocumentParser* parser, |
| fragment->document(), |
| parserContentPolicy, |
| options) { |
| - ASSERT(isMainThread()); |
| - ASSERT(contextElement); |
| + DCHECK(isMainThread()); |
| + DCHECK(contextElement); |
| m_tree.initFragmentParsing(fragment, contextElement); |
| m_fragmentContext.init(fragment, contextElement); |
| @@ -292,8 +292,8 @@ void HTMLTreeBuilder::detach() { |
| Element* HTMLTreeBuilder::takeScriptToProcess( |
| TextPosition& scriptStartPosition) { |
| - ASSERT(m_scriptToProcess); |
| - ASSERT(!m_tree.hasPendingTasks()); |
| + DCHECK(m_scriptToProcess); |
| + DCHECK(!m_tree.hasPendingTasks()); |
| // Unpause ourselves, callers may pause us again when processing the script. |
| // The HTML5 spec is written as though scripts are executed inside the tree |
| // builder. We pause the parser to exit the tree builder, and then resume |
| @@ -343,7 +343,7 @@ void HTMLTreeBuilder::processToken(AtomicHTMLToken* token) { |
| switch (token->type()) { |
| case HTMLToken::Uninitialized: |
| case HTMLToken::Character: |
| - ASSERT_NOT_REACHED(); |
| + NOTREACHED(); |
| break; |
| case HTMLToken::DOCTYPE: |
| processDoctypeToken(token); |
| @@ -364,7 +364,7 @@ void HTMLTreeBuilder::processToken(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processDoctypeToken(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::DOCTYPE); |
| + DCHECK_EQ(token->type(), HTMLToken::DOCTYPE); |
| if (m_insertionMode == InitialMode) { |
| m_tree.insertDoctype(token); |
| setInsertionMode(BeforeHTMLMode); |
| @@ -425,7 +425,7 @@ void HTMLTreeBuilder::processCloseWhenNestedTag(AtomicHTMLToken* token) { |
| while (1) { |
| HTMLStackItem* item = nodeRecord->stackItem(); |
| if (shouldClose(item)) { |
| - ASSERT(item->isElementNode()); |
| + DCHECK(item->isElementNode()); |
| processFakeEndTag(item->localName()); |
| break; |
| } |
| @@ -533,7 +533,7 @@ static void adjustForeignAttributes(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processStartTagForInBody(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return; |
| @@ -552,7 +552,7 @@ void HTMLTreeBuilder::processStartTagForInBody(AtomicHTMLToken* token) { |
| if (!m_tree.openElements()->secondElementIsHTMLBodyElement() || |
| m_tree.openElements()->hasOnlyOneElement() || |
| m_tree.openElements()->hasTemplateInHTMLScope()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| m_framesetOk = false; |
| @@ -563,7 +563,7 @@ void HTMLTreeBuilder::processStartTagForInBody(AtomicHTMLToken* token) { |
| parseError(token); |
| if (!m_tree.openElements()->secondElementIsHTMLBodyElement() || |
| m_tree.openElements()->hasOnlyOneElement()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| if (!m_framesetOk) |
| @@ -853,9 +853,9 @@ void HTMLTreeBuilder::processTemplateStartTag(AtomicHTMLToken* token) { |
| } |
| bool HTMLTreeBuilder::processTemplateEndTag(AtomicHTMLToken* token) { |
| - ASSERT(token->name() == templateTag.localName()); |
| + DCHECK_EQ(token->name(), templateTag.localName()); |
| if (!m_tree.openElements()->hasTemplateInHTMLScope()) { |
| - ASSERT(m_templateInsertionModes.isEmpty() || |
| + DCHECK(m_templateInsertionModes.isEmpty() || |
| (m_templateInsertionModes.size() == 1 && |
| isHTMLTemplateElement(m_fragmentContext.contextElement()))); |
| parseError(token); |
| @@ -884,7 +884,7 @@ bool HTMLTreeBuilder::processEndOfFileForInTemplateContents( |
| bool HTMLTreeBuilder::processColgroupEndTagForInColumnGroup() { |
| if (m_tree.currentIsRootNode() || |
| isHTMLTemplateElement(*m_tree.currentNode())) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| // FIXME: parse error |
| return false; |
| } |
| @@ -895,7 +895,7 @@ bool HTMLTreeBuilder::processColgroupEndTagForInColumnGroup() { |
| // http://www.whatwg.org/specs/web-apps/current-work/#adjusted-current-node |
| HTMLStackItem* HTMLTreeBuilder::adjustedCurrentStackItem() const { |
| - ASSERT(!m_tree.isEmpty()); |
| + DCHECK(!m_tree.isEmpty()); |
| if (isParsingFragment() && m_tree.openElements()->hasOnlyOneElement()) |
| return m_fragmentContext.contextElementStackItem(); |
| @@ -904,19 +904,19 @@ HTMLStackItem* HTMLTreeBuilder::adjustedCurrentStackItem() const { |
| // http://www.whatwg.org/specs/web-apps/current-work/multipage/tokenization.html#close-the-cell |
| void HTMLTreeBuilder::closeTheCell() { |
| - ASSERT(getInsertionMode() == InCellMode); |
| + DCHECK_EQ(getInsertionMode(), InCellMode); |
| if (m_tree.openElements()->inTableScope(tdTag)) { |
| - ASSERT(!m_tree.openElements()->inTableScope(thTag)); |
| + DCHECK(!m_tree.openElements()->inTableScope(thTag)); |
| processFakeEndTag(tdTag); |
| return; |
| } |
| - ASSERT(m_tree.openElements()->inTableScope(thTag)); |
| + DCHECK(m_tree.openElements()->inTableScope(thTag)); |
| processFakeEndTag(thTag); |
| - ASSERT(getInsertionMode() == InRowMode); |
| + DCHECK_EQ(getInsertionMode(), InRowMode); |
| } |
| void HTMLTreeBuilder::processStartTagForInTable(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| if (token->name() == captionTag) { |
| m_tree.openElements()->popUntilTableScopeMarker(); |
| m_tree.activeFormattingElements()->appendMarker(); |
| @@ -932,7 +932,7 @@ void HTMLTreeBuilder::processStartTagForInTable(AtomicHTMLToken* token) { |
| } |
| if (token->name() == colTag) { |
| processFakeStartTag(colgroupTag); |
| - ASSERT(InColumnGroupMode); |
| + DCHECK(InColumnGroupMode); |
| processStartTag(token); |
| return; |
| } |
| @@ -944,14 +944,14 @@ void HTMLTreeBuilder::processStartTagForInTable(AtomicHTMLToken* token) { |
| } |
| if (isTableCellContextTag(token->name()) || token->name() == trTag) { |
| processFakeStartTag(tbodyTag); |
| - ASSERT(getInsertionMode() == InTableBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InTableBodyMode); |
| processStartTag(token); |
| return; |
| } |
| if (token->name() == tableTag) { |
| parseError(token); |
| if (!processTableEndTagForInTable()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| processStartTag(token); |
| @@ -988,14 +988,14 @@ void HTMLTreeBuilder::processStartTagForInTable(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| switch (getInsertionMode()) { |
| case InitialMode: |
| - ASSERT(getInsertionMode() == InitialMode); |
| + DCHECK_EQ(getInsertionMode(), InitialMode); |
| defaultForInitial(); |
| // Fall through. |
| case BeforeHTMLMode: |
| - ASSERT(getInsertionMode() == BeforeHTMLMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHTMLMode); |
| if (token->name() == htmlTag) { |
| m_tree.insertHTMLHtmlStartTagBeforeHTML(token); |
| setInsertionMode(BeforeHeadMode); |
| @@ -1004,7 +1004,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| defaultForBeforeHTML(); |
| // Fall through. |
| case BeforeHeadMode: |
| - ASSERT(getInsertionMode() == BeforeHeadMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHeadMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return; |
| @@ -1017,13 +1017,13 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| defaultForBeforeHead(); |
| // Fall through. |
| case InHeadMode: |
| - ASSERT(getInsertionMode() == InHeadMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadMode); |
| if (processStartTagForInHead(token)) |
| return; |
| defaultForInHead(); |
| // Fall through. |
| case AfterHeadMode: |
| - ASSERT(getInsertionMode() == AfterHeadMode); |
| + DCHECK_EQ(getInsertionMode(), AfterHeadMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return; |
| @@ -1045,7 +1045,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| token->name() == scriptTag || token->name() == styleTag || |
| token->name() == templateTag || token->name() == titleTag) { |
| parseError(token); |
| - ASSERT(m_tree.head()); |
| + DCHECK(m_tree.head()); |
| m_tree.openElements()->pushHTMLHeadElement(m_tree.headStackItem()); |
| processStartTagForInHead(token); |
| m_tree.openElements()->removeHTMLHeadElement(m_tree.head()); |
| @@ -1058,21 +1058,21 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| defaultForAfterHead(); |
| // Fall through |
| case InBodyMode: |
| - ASSERT(getInsertionMode() == InBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InBodyMode); |
| processStartTagForInBody(token); |
| break; |
| case InTableMode: |
| - ASSERT(getInsertionMode() == InTableMode); |
| + DCHECK_EQ(getInsertionMode(), InTableMode); |
| processStartTagForInTable(token); |
| break; |
| case InCaptionMode: |
| - ASSERT(getInsertionMode() == InCaptionMode); |
| + DCHECK_EQ(getInsertionMode(), InCaptionMode); |
| if (isCaptionColOrColgroupTag(token->name()) || |
| isTableBodyContextTag(token->name()) || |
| isTableCellContextTag(token->name()) || token->name() == trTag) { |
| parseError(token); |
| if (!processCaptionEndTagForInCaption()) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| return; |
| } |
| processStartTag(token); |
| @@ -1081,7 +1081,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| processStartTagForInBody(token); |
| break; |
| case InColumnGroupMode: |
| - ASSERT(getInsertionMode() == InColumnGroupMode); |
| + DCHECK_EQ(getInsertionMode(), InColumnGroupMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return; |
| @@ -1095,13 +1095,13 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| return; |
| } |
| if (!processColgroupEndTagForInColumnGroup()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| processStartTag(token); |
| break; |
| case InTableBodyMode: |
| - ASSERT(getInsertionMode() == InTableBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InTableBodyMode); |
| if (token->name() == trTag) { |
| // How is there ever anything to pop? |
| m_tree.openElements()->popUntilTableBodyScopeMarker(); |
| @@ -1112,7 +1112,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| if (isTableCellContextTag(token->name())) { |
| parseError(token); |
| processFakeStartTag(trTag); |
| - ASSERT(getInsertionMode() == InRowMode); |
| + DCHECK_EQ(getInsertionMode(), InRowMode); |
| processStartTag(token); |
| return; |
| } |
| @@ -1122,12 +1122,12 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| if (!m_tree.openElements()->inTableScope(tbodyTag) && |
| !m_tree.openElements()->inTableScope(theadTag) && |
| !m_tree.openElements()->inTableScope(tfootTag)) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| parseError(token); |
| return; |
| } |
| m_tree.openElements()->popUntilTableBodyScopeMarker(); |
| - ASSERT(isTableBodyContextTag(m_tree.currentStackItem()->localName())); |
| + DCHECK(isTableBodyContextTag(m_tree.currentStackItem()->localName())); |
| processFakeEndTag(m_tree.currentStackItem()->localName()); |
| processStartTag(token); |
| return; |
| @@ -1135,7 +1135,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| processStartTagForInTable(token); |
| break; |
| case InRowMode: |
| - ASSERT(getInsertionMode() == InRowMode); |
| + DCHECK_EQ(getInsertionMode(), InRowMode); |
| if (isTableCellContextTag(token->name())) { |
| m_tree.openElements()->popUntilTableRowScopeMarker(); |
| m_tree.insertHTMLElement(token); |
| @@ -1146,24 +1146,24 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| if (token->name() == trTag || isCaptionColOrColgroupTag(token->name()) || |
| isTableBodyContextTag(token->name())) { |
| if (!processTrEndTagForInRow()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| - ASSERT(getInsertionMode() == InTableBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InTableBodyMode); |
| processStartTag(token); |
| return; |
| } |
| processStartTagForInTable(token); |
| break; |
| case InCellMode: |
| - ASSERT(getInsertionMode() == InCellMode); |
| + DCHECK_EQ(getInsertionMode(), InCellMode); |
| if (isCaptionColOrColgroupTag(token->name()) || |
| isTableCellContextTag(token->name()) || token->name() == trTag || |
| isTableBodyContextTag(token->name())) { |
| // FIXME: This could be more efficient. |
| if (!m_tree.openElements()->inTableScope(tdTag) && |
| !m_tree.openElements()->inTableScope(thTag)) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| parseError(token); |
| return; |
| } |
| @@ -1175,7 +1175,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| break; |
| case AfterBodyMode: |
| case AfterAfterBodyMode: |
| - ASSERT(getInsertionMode() == AfterBodyMode || |
| + DCHECK(getInsertionMode() == AfterBodyMode || |
| getInsertionMode() == AfterAfterBodyMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| @@ -1185,7 +1185,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| processStartTag(token); |
| break; |
| case InHeadNoscriptMode: |
| - ASSERT(getInsertionMode() == InHeadNoscriptMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadNoscriptMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return; |
| @@ -1205,7 +1205,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| processToken(token); |
| break; |
| case InFramesetMode: |
| - ASSERT(getInsertionMode() == InFramesetMode); |
| + DCHECK_EQ(getInsertionMode(), InFramesetMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return; |
| @@ -1230,7 +1230,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| break; |
| case AfterFramesetMode: |
| case AfterAfterFramesetMode: |
| - ASSERT(getInsertionMode() == AfterFramesetMode || |
| + DCHECK(getInsertionMode() == AfterFramesetMode || |
| getInsertionMode() == AfterAfterFramesetMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| @@ -1243,7 +1243,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| parseError(token); |
| break; |
| case InSelectInTableMode: |
| - ASSERT(getInsertionMode() == InSelectInTableMode); |
| + DCHECK_EQ(getInsertionMode(), InSelectInTableMode); |
| if (token->name() == captionTag || token->name() == tableTag || |
| isTableBodyContextTag(token->name()) || token->name() == trTag || |
| isTableCellContextTag(token->name())) { |
| @@ -1255,7 +1255,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| } |
| // Fall through |
| case InSelectMode: |
| - ASSERT(getInsertionMode() == InSelectMode || |
| + DCHECK(getInsertionMode() == InSelectMode || |
| getInsertionMode() == InSelectInTableMode); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| @@ -1292,7 +1292,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| token->name() == textareaTag) { |
| parseError(token); |
| if (!m_tree.openElements()->inSelectScope(selectTag)) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| return; |
| } |
| AtomicHTMLToken endSelect(HTMLToken::EndTag, selectTag.localName()); |
| @@ -1315,7 +1315,7 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| processStartTag(token); |
| break; |
| case TextMode: |
| - ASSERT_NOT_REACHED(); |
| + NOTREACHED(); |
| break; |
| case TemplateContentsMode: |
| if (token->name() == templateTag) { |
| @@ -1344,8 +1344,8 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| else |
| insertionMode = InBodyMode; |
| - ASSERT(insertionMode != TemplateContentsMode); |
| - ASSERT(m_templateInsertionModes.back() == TemplateContentsMode); |
| + DCHECK_NE(insertionMode, TemplateContentsMode); |
| + DCHECK_EQ(m_templateInsertionModes.back(), TemplateContentsMode); |
| m_templateInsertionModes.back() = insertionMode; |
| setInsertionMode(insertionMode); |
| @@ -1357,15 +1357,15 @@ void HTMLTreeBuilder::processStartTag(AtomicHTMLToken* token) { |
| void HTMLTreeBuilder::processHtmlStartTagForInBody(AtomicHTMLToken* token) { |
| parseError(token); |
| if (m_tree.openElements()->hasTemplateInHTMLScope()) { |
| - ASSERT(isParsingTemplateContents()); |
| + DCHECK(isParsingTemplateContents()); |
| return; |
| } |
| m_tree.insertHTMLHtmlStartTagInBody(token); |
| } |
| bool HTMLTreeBuilder::processBodyEndTagForInBody(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| - ASSERT(token->name() == bodyTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| + DCHECK(token->name() == bodyTag); |
| if (!m_tree.openElements()->inScope(bodyTag.localName())) { |
| parseError(token); |
| return false; |
| @@ -1377,7 +1377,7 @@ bool HTMLTreeBuilder::processBodyEndTagForInBody(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processAnyOtherEndTagForInBody(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| if (token->name() == menuitemTag) |
| UseCounter::count(m_tree.currentNode()->document(), |
| UseCounter::MenuItemCloseTag); |
| @@ -1447,7 +1447,7 @@ void HTMLTreeBuilder::callTheAdoptionAgency(AtomicHTMLToken* token) { |
| return; |
| } |
| // 7. |
| - ASSERT(furthestBlock->isAbove(formattingElementRecord)); |
| + DCHECK(furthestBlock->isAbove(formattingElementRecord)); |
| HTMLStackItem* commonAncestor = |
| formattingElementRecord->next()->stackItem(); |
| // 8. |
| @@ -1461,7 +1461,7 @@ void HTMLTreeBuilder::callTheAdoptionAgency(AtomicHTMLToken* token) { |
| for (int i = 0; i < innerIterationLimit; ++i) { |
| // 9.4 |
| node = nextNode; |
| - ASSERT(node); |
| + DCHECK(node); |
| // Save node->next() for the next iteration in case node is deleted in |
| // 9.5. |
| nextNode = node->next(); |
| @@ -1564,11 +1564,11 @@ void HTMLTreeBuilder::resetInsertionModeAppropriately() { |
| if (m_tree.headStackItem()) |
| return setInsertionMode(AfterHeadMode); |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| return setInsertionMode(BeforeHeadMode); |
| } |
| if (last) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| return setInsertionMode(InBodyMode); |
| } |
| nodeRecord = nodeRecord->next(); |
| @@ -1576,7 +1576,7 @@ void HTMLTreeBuilder::resetInsertionModeAppropriately() { |
| } |
| void HTMLTreeBuilder::processEndTagForInTableBody(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| if (isTableBodyContextTag(token->name())) { |
| if (!m_tree.openElements()->inTableScope(token->name())) { |
| parseError(token); |
| @@ -1592,12 +1592,12 @@ void HTMLTreeBuilder::processEndTagForInTableBody(AtomicHTMLToken* token) { |
| if (!m_tree.openElements()->inTableScope(tbodyTag) && |
| !m_tree.openElements()->inTableScope(theadTag) && |
| !m_tree.openElements()->inTableScope(tfootTag)) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| parseError(token); |
| return; |
| } |
| m_tree.openElements()->popUntilTableBodyScopeMarker(); |
| - ASSERT(isTableBodyContextTag(m_tree.currentStackItem()->localName())); |
| + DCHECK(isTableBodyContextTag(m_tree.currentStackItem()->localName())); |
| processFakeEndTag(m_tree.currentStackItem()->localName()); |
| processEndTag(token); |
| return; |
| @@ -1612,17 +1612,17 @@ void HTMLTreeBuilder::processEndTagForInTableBody(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processEndTagForInRow(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| if (token->name() == trTag) { |
| processTrEndTagForInRow(); |
| return; |
| } |
| if (token->name() == tableTag) { |
| if (!processTrEndTagForInRow()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| - ASSERT(getInsertionMode() == InTableBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InTableBodyMode); |
| processEndTag(token); |
| return; |
| } |
| @@ -1632,7 +1632,7 @@ void HTMLTreeBuilder::processEndTagForInRow(AtomicHTMLToken* token) { |
| return; |
| } |
| processFakeEndTag(trTag); |
| - ASSERT(getInsertionMode() == InTableBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InTableBodyMode); |
| processEndTag(token); |
| return; |
| } |
| @@ -1645,7 +1645,7 @@ void HTMLTreeBuilder::processEndTagForInRow(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processEndTagForInCell(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| if (isTableCellContextTag(token->name())) { |
| if (!m_tree.openElements()->inTableScope(token->name())) { |
| parseError(token); |
| @@ -1667,7 +1667,7 @@ void HTMLTreeBuilder::processEndTagForInCell(AtomicHTMLToken* token) { |
| if (token->name() == tableTag || token->name() == trTag || |
| isTableBodyContextTag(token->name())) { |
| if (!m_tree.openElements()->inTableScope(token->name())) { |
| - ASSERT(isTableBodyContextTag(token->name()) || |
| + DCHECK(isTableBodyContextTag(token->name()) || |
| m_tree.openElements()->inTableScope(templateTag) || |
| isParsingFragment()); |
| parseError(token); |
| @@ -1681,7 +1681,7 @@ void HTMLTreeBuilder::processEndTagForInCell(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processEndTagForInBody(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| if (token->name() == bodyTag) { |
| processBodyEndTagForInBody(token); |
| return; |
| @@ -1730,7 +1730,7 @@ void HTMLTreeBuilder::processEndTagForInBody(AtomicHTMLToken* token) { |
| if (!m_tree.openElements()->inButtonScope(token->name())) { |
| parseError(token); |
| processFakeStartTag(pTag); |
| - ASSERT(m_tree.openElements()->inScope(token->name())); |
| + DCHECK(m_tree.openElements()->inScope(token->name())); |
| processEndTag(token); |
| return; |
| } |
| @@ -1804,7 +1804,7 @@ void HTMLTreeBuilder::processEndTagForInBody(AtomicHTMLToken* token) { |
| bool HTMLTreeBuilder::processCaptionEndTagForInCaption() { |
| if (!m_tree.openElements()->inTableScope(captionTag.localName())) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| // FIXME: parse error |
| return false; |
| } |
| @@ -1818,12 +1818,12 @@ bool HTMLTreeBuilder::processCaptionEndTagForInCaption() { |
| bool HTMLTreeBuilder::processTrEndTagForInRow() { |
| if (!m_tree.openElements()->inTableScope(trTag)) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| // FIXME: parse error |
| return false; |
| } |
| m_tree.openElements()->popUntilTableRowScopeMarker(); |
| - ASSERT(m_tree.currentStackItem()->hasTagName(trTag)); |
| + DCHECK(m_tree.currentStackItem()->hasTagName(trTag)); |
| m_tree.openElements()->pop(); |
| setInsertionMode(InTableBodyMode); |
| return true; |
| @@ -1831,7 +1831,7 @@ bool HTMLTreeBuilder::processTrEndTagForInRow() { |
| bool HTMLTreeBuilder::processTableEndTagForInTable() { |
| if (!m_tree.openElements()->inTableScope(tableTag)) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| // FIXME: parse error. |
| return false; |
| } |
| @@ -1841,7 +1841,7 @@ bool HTMLTreeBuilder::processTableEndTagForInTable() { |
| } |
| void HTMLTreeBuilder::processEndTagForInTable(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| if (token->name() == tableTag) { |
| processTableEndTagForInTable(); |
| return; |
| @@ -1859,14 +1859,14 @@ void HTMLTreeBuilder::processEndTagForInTable(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndTag); |
| + DCHECK_EQ(token->type(), HTMLToken::EndTag); |
| switch (getInsertionMode()) { |
| case InitialMode: |
| - ASSERT(getInsertionMode() == InitialMode); |
| + DCHECK_EQ(getInsertionMode(), InitialMode); |
| defaultForInitial(); |
| // Fall through. |
| case BeforeHTMLMode: |
| - ASSERT(getInsertionMode() == BeforeHTMLMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHTMLMode); |
| if (token->name() != headTag && token->name() != bodyTag && |
| token->name() != htmlTag && token->name() != brTag) { |
| parseError(token); |
| @@ -1875,7 +1875,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| defaultForBeforeHTML(); |
| // Fall through. |
| case BeforeHeadMode: |
| - ASSERT(getInsertionMode() == BeforeHeadMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHeadMode); |
| if (token->name() != headTag && token->name() != bodyTag && |
| token->name() != htmlTag && token->name() != brTag) { |
| parseError(token); |
| @@ -1884,7 +1884,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| defaultForBeforeHead(); |
| // Fall through. |
| case InHeadMode: |
| - ASSERT(getInsertionMode() == InHeadMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadMode); |
| // FIXME: This case should be broken out into processEndTagForInHead, |
| // because other end tag cases now refer to it ("process the token for |
| // using the rules of the "in head" insertion mode"). but because the |
| @@ -1906,7 +1906,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| defaultForInHead(); |
| // Fall through. |
| case AfterHeadMode: |
| - ASSERT(getInsertionMode() == AfterHeadMode); |
| + DCHECK_EQ(getInsertionMode(), AfterHeadMode); |
| if (token->name() != bodyTag && token->name() != htmlTag && |
| token->name() != brTag) { |
| parseError(token); |
| @@ -1915,15 +1915,15 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| defaultForAfterHead(); |
| // Fall through |
| case InBodyMode: |
| - ASSERT(getInsertionMode() == InBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InBodyMode); |
| processEndTagForInBody(token); |
| break; |
| case InTableMode: |
| - ASSERT(getInsertionMode() == InTableMode); |
| + DCHECK_EQ(getInsertionMode(), InTableMode); |
| processEndTagForInTable(token); |
| break; |
| case InCaptionMode: |
| - ASSERT(getInsertionMode() == InCaptionMode); |
| + DCHECK_EQ(getInsertionMode(), InCaptionMode); |
| if (token->name() == captionTag) { |
| processCaptionEndTagForInCaption(); |
| return; |
| @@ -1931,7 +1931,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| if (token->name() == tableTag) { |
| parseError(token); |
| if (!processCaptionEndTagForInCaption()) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| return; |
| } |
| processEndTag(token); |
| @@ -1947,7 +1947,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| processEndTagForInBody(token); |
| break; |
| case InColumnGroupMode: |
| - ASSERT(getInsertionMode() == InColumnGroupMode); |
| + DCHECK_EQ(getInsertionMode(), InColumnGroupMode); |
| if (token->name() == colgroupTag) { |
| processColgroupEndTagForInColumnGroup(); |
| return; |
| @@ -1961,25 +1961,25 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| return; |
| } |
| if (!processColgroupEndTagForInColumnGroup()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| return; |
| } |
| processEndTag(token); |
| break; |
| case InRowMode: |
| - ASSERT(getInsertionMode() == InRowMode); |
| + DCHECK_EQ(getInsertionMode(), InRowMode); |
| processEndTagForInRow(token); |
| break; |
| case InCellMode: |
| - ASSERT(getInsertionMode() == InCellMode); |
| + DCHECK_EQ(getInsertionMode(), InCellMode); |
| processEndTagForInCell(token); |
| break; |
| case InTableBodyMode: |
| - ASSERT(getInsertionMode() == InTableBodyMode); |
| + DCHECK_EQ(getInsertionMode(), InTableBodyMode); |
| processEndTagForInTableBody(token); |
| break; |
| case AfterBodyMode: |
| - ASSERT(getInsertionMode() == AfterBodyMode); |
| + DCHECK_EQ(getInsertionMode(), AfterBodyMode); |
| if (token->name() == htmlTag) { |
| if (isParsingFragment()) { |
| parseError(token); |
| @@ -1990,18 +1990,18 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| } |
| // Fall through. |
| case AfterAfterBodyMode: |
| - ASSERT(getInsertionMode() == AfterBodyMode || |
| + DCHECK(getInsertionMode() == AfterBodyMode || |
| getInsertionMode() == AfterAfterBodyMode); |
| parseError(token); |
| setInsertionMode(InBodyMode); |
| processEndTag(token); |
| break; |
| case InHeadNoscriptMode: |
| - ASSERT(getInsertionMode() == InHeadNoscriptMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadNoscriptMode); |
| if (token->name() == noscriptTag) { |
| - ASSERT(m_tree.currentStackItem()->hasTagName(noscriptTag)); |
| + DCHECK(m_tree.currentStackItem()->hasTagName(noscriptTag)); |
| m_tree.openElements()->pop(); |
| - ASSERT(m_tree.currentStackItem()->hasTagName(headTag)); |
| + DCHECK(m_tree.currentStackItem()->hasTagName(headTag)); |
| setInsertionMode(InHeadMode); |
| return; |
| } |
| @@ -2033,14 +2033,14 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| setInsertionMode(m_originalInsertionMode); |
| break; |
| case InFramesetMode: |
| - ASSERT(getInsertionMode() == InFramesetMode); |
| + DCHECK_EQ(getInsertionMode(), InFramesetMode); |
| if (token->name() == framesetTag) { |
| bool ignoreFramesetForFragmentParsing = m_tree.currentIsRootNode(); |
| ignoreFramesetForFragmentParsing = |
| ignoreFramesetForFragmentParsing || |
| m_tree.openElements()->hasTemplateInHTMLScope(); |
| if (ignoreFramesetForFragmentParsing) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| parseError(token); |
| return; |
| } |
| @@ -2056,19 +2056,19 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| } |
| break; |
| case AfterFramesetMode: |
| - ASSERT(getInsertionMode() == AfterFramesetMode); |
| + DCHECK_EQ(getInsertionMode(), AfterFramesetMode); |
| if (token->name() == htmlTag) { |
| setInsertionMode(AfterAfterFramesetMode); |
| return; |
| } |
| // Fall through. |
| case AfterAfterFramesetMode: |
| - ASSERT(getInsertionMode() == AfterFramesetMode || |
| + DCHECK(getInsertionMode() == AfterFramesetMode || |
| getInsertionMode() == AfterAfterFramesetMode); |
| parseError(token); |
| break; |
| case InSelectInTableMode: |
| - ASSERT(getInsertionMode() == InSelectInTableMode); |
| + DCHECK(getInsertionMode() == InSelectInTableMode); |
| if (token->name() == captionTag || token->name() == tableTag || |
| isTableBodyContextTag(token->name()) || token->name() == trTag || |
| isTableCellContextTag(token->name())) { |
| @@ -2082,7 +2082,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| } |
| // Fall through. |
| case InSelectMode: |
| - ASSERT(getInsertionMode() == InSelectMode || |
| + DCHECK(getInsertionMode() == InSelectMode || |
| getInsertionMode() == InSelectInTableMode); |
| if (token->name() == optgroupTag) { |
| if (m_tree.currentStackItem()->hasTagName(optionTag) && |
| @@ -2106,7 +2106,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| } |
| if (token->name() == selectTag) { |
| if (!m_tree.openElements()->inSelectScope(token->name())) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| parseError(token); |
| return; |
| } |
| @@ -2133,7 +2133,7 @@ void HTMLTreeBuilder::processEndTag(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processComment(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::Comment); |
| + DCHECK_EQ(token->type(), HTMLToken::Comment); |
| if (m_insertionMode == InitialMode || m_insertionMode == BeforeHTMLMode || |
| m_insertionMode == AfterAfterBodyMode || |
| m_insertionMode == AfterAfterFramesetMode) { |
| @@ -2153,7 +2153,7 @@ void HTMLTreeBuilder::processComment(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processCharacter(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::Character); |
| + DCHECK_EQ(token->type(), HTMLToken::Character); |
| CharacterTokenBuffer buffer(token); |
| processCharacterBuffer(buffer); |
| } |
| @@ -2180,7 +2180,7 @@ ReprocessBuffer: |
| switch (getInsertionMode()) { |
| case InitialMode: { |
| - ASSERT(getInsertionMode() == InitialMode); |
| + DCHECK_EQ(getInsertionMode(), InitialMode); |
| buffer.skipLeadingWhitespace(); |
| if (buffer.isEmpty()) |
| return; |
| @@ -2188,7 +2188,7 @@ ReprocessBuffer: |
| // Fall through. |
| } |
| case BeforeHTMLMode: { |
| - ASSERT(getInsertionMode() == BeforeHTMLMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHTMLMode); |
| buffer.skipLeadingWhitespace(); |
| if (buffer.isEmpty()) |
| return; |
| @@ -2200,7 +2200,7 @@ ReprocessBuffer: |
| // Fall through. |
| } |
| case BeforeHeadMode: { |
| - ASSERT(getInsertionMode() == BeforeHeadMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHeadMode); |
| buffer.skipLeadingWhitespace(); |
| if (buffer.isEmpty()) |
| return; |
| @@ -2208,7 +2208,7 @@ ReprocessBuffer: |
| // Fall through. |
| } |
| case InHeadMode: { |
| - ASSERT(getInsertionMode() == InHeadMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadMode); |
| StringView leadingWhitespace = buffer.takeLeadingWhitespace(); |
| if (!leadingWhitespace.isEmpty()) |
| m_tree.insertTextNode(leadingWhitespace, AllWhitespace); |
| @@ -2218,7 +2218,7 @@ ReprocessBuffer: |
| // Fall through. |
| } |
| case AfterHeadMode: { |
| - ASSERT(getInsertionMode() == AfterHeadMode); |
| + DCHECK_EQ(getInsertionMode(), AfterHeadMode); |
| StringView leadingWhitespace = buffer.takeLeadingWhitespace(); |
| if (!leadingWhitespace.isEmpty()) |
| m_tree.insertTextNode(leadingWhitespace, AllWhitespace); |
| @@ -2231,7 +2231,7 @@ ReprocessBuffer: |
| case InCaptionMode: |
| case TemplateContentsMode: |
| case InCellMode: { |
| - ASSERT(getInsertionMode() == InBodyMode || |
| + DCHECK(getInsertionMode() == InBodyMode || |
| getInsertionMode() == InCaptionMode || |
| getInsertionMode() == InCellMode || |
| getInsertionMode() == TemplateContentsMode); |
| @@ -2241,10 +2241,10 @@ ReprocessBuffer: |
| case InTableMode: |
| case InTableBodyMode: |
| case InRowMode: { |
| - ASSERT(getInsertionMode() == InTableMode || |
| + DCHECK(getInsertionMode() == InTableMode || |
| getInsertionMode() == InTableBodyMode || |
| getInsertionMode() == InRowMode); |
| - ASSERT(m_pendingTableCharacters.isEmpty()); |
| + DCHECK(m_pendingTableCharacters.isEmpty()); |
| if (m_tree.currentStackItem()->isElementNode() && |
| (m_tree.currentStackItem()->hasTagName(tableTag) || |
| m_tree.currentStackItem()->hasTagName(tbodyTag) || |
| @@ -2266,14 +2266,14 @@ ReprocessBuffer: |
| break; |
| } |
| case InColumnGroupMode: { |
| - ASSERT(getInsertionMode() == InColumnGroupMode); |
| + DCHECK_EQ(getInsertionMode(), InColumnGroupMode); |
| StringView leadingWhitespace = buffer.takeLeadingWhitespace(); |
| if (!leadingWhitespace.isEmpty()) |
| m_tree.insertTextNode(leadingWhitespace, AllWhitespace); |
| if (buffer.isEmpty()) |
| return; |
| if (!processColgroupEndTagForInColumnGroup()) { |
| - ASSERT(isParsingFragmentOrTemplateContents()); |
| + DCHECK(isParsingFragmentOrTemplateContents()); |
| // The spec tells us to drop these characters on the floor. |
| buffer.skipLeadingNonWhitespace(); |
| if (buffer.isEmpty()) |
| @@ -2283,19 +2283,19 @@ ReprocessBuffer: |
| } |
| case AfterBodyMode: |
| case AfterAfterBodyMode: { |
| - ASSERT(getInsertionMode() == AfterBodyMode || |
| + DCHECK(getInsertionMode() == AfterBodyMode || |
| getInsertionMode() == AfterAfterBodyMode); |
| // FIXME: parse error |
| setInsertionMode(InBodyMode); |
| goto ReprocessBuffer; |
| } |
| case TextMode: { |
| - ASSERT(getInsertionMode() == TextMode); |
| + DCHECK_EQ(getInsertionMode(), TextMode); |
| m_tree.insertTextNode(buffer.takeRemaining()); |
| break; |
| } |
| case InHeadNoscriptMode: { |
| - ASSERT(getInsertionMode() == InHeadNoscriptMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadNoscriptMode); |
| StringView leadingWhitespace = buffer.takeLeadingWhitespace(); |
| if (!leadingWhitespace.isEmpty()) |
| m_tree.insertTextNode(leadingWhitespace, AllWhitespace); |
| @@ -2306,7 +2306,7 @@ ReprocessBuffer: |
| } |
| case InFramesetMode: |
| case AfterFramesetMode: { |
| - ASSERT(getInsertionMode() == InFramesetMode || |
| + DCHECK(getInsertionMode() == InFramesetMode || |
| getInsertionMode() == AfterFramesetMode || |
| getInsertionMode() == AfterAfterFramesetMode); |
| String leadingWhitespace = buffer.takeRemainingWhitespace(); |
| @@ -2318,7 +2318,7 @@ ReprocessBuffer: |
| } |
| case InSelectInTableMode: |
| case InSelectMode: { |
| - ASSERT(getInsertionMode() == InSelectMode || |
| + DCHECK(getInsertionMode() == InSelectMode || |
| getInsertionMode() == InSelectInTableMode); |
| m_tree.insertTextNode(buffer.takeRemaining()); |
| break; |
| @@ -2346,33 +2346,33 @@ void HTMLTreeBuilder::processCharacterBufferForInBody( |
| } |
| void HTMLTreeBuilder::processEndOfFile(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::EndOfFile); |
| + DCHECK_EQ(token->type(), HTMLToken::EndOfFile); |
| switch (getInsertionMode()) { |
| case InitialMode: |
| - ASSERT(getInsertionMode() == InitialMode); |
| + DCHECK_EQ(getInsertionMode(), InitialMode); |
| defaultForInitial(); |
| // Fall through. |
| case BeforeHTMLMode: |
| - ASSERT(getInsertionMode() == BeforeHTMLMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHTMLMode); |
| defaultForBeforeHTML(); |
| // Fall through. |
| case BeforeHeadMode: |
| - ASSERT(getInsertionMode() == BeforeHeadMode); |
| + DCHECK_EQ(getInsertionMode(), BeforeHeadMode); |
| defaultForBeforeHead(); |
| // Fall through. |
| case InHeadMode: |
| - ASSERT(getInsertionMode() == InHeadMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadMode); |
| defaultForInHead(); |
| // Fall through. |
| case AfterHeadMode: |
| - ASSERT(getInsertionMode() == AfterHeadMode); |
| + DCHECK_EQ(getInsertionMode(), AfterHeadMode); |
| defaultForAfterHead(); |
| // Fall through |
| case InBodyMode: |
| case InCellMode: |
| case InCaptionMode: |
| case InRowMode: |
| - ASSERT(getInsertionMode() == InBodyMode || |
| + DCHECK(getInsertionMode() == InBodyMode || |
| getInsertionMode() == InCellMode || |
| getInsertionMode() == InCaptionMode || |
| getInsertionMode() == InRowMode || |
| @@ -2385,25 +2385,25 @@ void HTMLTreeBuilder::processEndOfFile(AtomicHTMLToken* token) { |
| break; |
| case AfterBodyMode: |
| case AfterAfterBodyMode: |
| - ASSERT(getInsertionMode() == AfterBodyMode || |
| + DCHECK(getInsertionMode() == AfterBodyMode || |
| getInsertionMode() == AfterAfterBodyMode); |
| break; |
| case InHeadNoscriptMode: |
| - ASSERT(getInsertionMode() == InHeadNoscriptMode); |
| + DCHECK_EQ(getInsertionMode(), InHeadNoscriptMode); |
| defaultForInHeadNoscript(); |
| processEndOfFile(token); |
| return; |
| case AfterFramesetMode: |
| case AfterAfterFramesetMode: |
| - ASSERT(getInsertionMode() == AfterFramesetMode || |
| + DCHECK(getInsertionMode() == AfterFramesetMode || |
| getInsertionMode() == AfterAfterFramesetMode); |
| break; |
| case InColumnGroupMode: |
| if (m_tree.currentIsRootNode()) { |
| - ASSERT(isParsingFragment()); |
| + DCHECK(isParsingFragment()); |
| return; // FIXME: Should we break here instead of returning? |
| } |
| - ASSERT(m_tree.currentNode()->hasTagName(colgroupTag) || |
| + DCHECK(m_tree.currentNode()->hasTagName(colgroupTag) || |
| isHTMLTemplateElement(m_tree.currentNode())); |
| processColgroupEndTagForInColumnGroup(); |
| // Fall through |
| @@ -2412,7 +2412,7 @@ void HTMLTreeBuilder::processEndOfFile(AtomicHTMLToken* token) { |
| case InTableBodyMode: |
| case InSelectInTableMode: |
| case InSelectMode: |
| - ASSERT(getInsertionMode() == InSelectMode || |
| + DCHECK(getInsertionMode() == InSelectMode || |
| getInsertionMode() == InSelectInTableMode || |
| getInsertionMode() == InTableMode || |
| getInsertionMode() == InFramesetMode || |
| @@ -2438,7 +2438,7 @@ void HTMLTreeBuilder::processEndOfFile(AtomicHTMLToken* token) { |
| if (isHTMLTextAreaElement(el)) |
| toHTMLFormControlElement(el)->setBlocksFormSubmission(true); |
| m_tree.openElements()->pop(); |
| - ASSERT(m_originalInsertionMode != TextMode); |
| + DCHECK_NE(m_originalInsertionMode, TextMode); |
| setInsertionMode(m_originalInsertionMode); |
| processEndOfFile(token); |
| return; |
| @@ -2502,7 +2502,7 @@ void HTMLTreeBuilder::defaultForInTableText() { |
| } |
| bool HTMLTreeBuilder::processStartTagForInHead(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| if (token->name() == htmlTag) { |
| processHtmlStartTagForInBody(token); |
| return true; |
| @@ -2548,7 +2548,7 @@ bool HTMLTreeBuilder::processStartTagForInHead(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processGenericRCDATAStartTag(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| m_tree.insertHTMLElement(token); |
| if (m_parser->tokenizer()) |
| m_parser->tokenizer()->setState(HTMLTokenizer::RCDATAState); |
| @@ -2557,7 +2557,7 @@ void HTMLTreeBuilder::processGenericRCDATAStartTag(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processGenericRawTextStartTag(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| m_tree.insertHTMLElement(token); |
| if (m_parser->tokenizer()) |
| m_parser->tokenizer()->setState(HTMLTokenizer::RAWTEXTState); |
| @@ -2566,7 +2566,7 @@ void HTMLTreeBuilder::processGenericRawTextStartTag(AtomicHTMLToken* token) { |
| } |
| void HTMLTreeBuilder::processScriptStartTag(AtomicHTMLToken* token) { |
| - ASSERT(token->type() == HTMLToken::StartTag); |
| + DCHECK_EQ(token->type(), HTMLToken::StartTag); |
| m_tree.insertScriptElement(token); |
| if (m_parser->tokenizer()) |
| m_parser->tokenizer()->setState(HTMLTokenizer::ScriptDataState); |
| @@ -2624,7 +2624,7 @@ void HTMLTreeBuilder::processTokenInForeignContent(AtomicHTMLToken* token) { |
| switch (token->type()) { |
| case HTMLToken::Uninitialized: |
| - ASSERT_NOT_REACHED(); |
| + NOTREACHED(); |
| break; |
| case HTMLToken::DOCTYPE: |
| parseError(token); |
| @@ -2709,7 +2709,7 @@ void HTMLTreeBuilder::processTokenInForeignContent(AtomicHTMLToken* token) { |
| break; |
| case HTMLToken::Character: |
| case HTMLToken::EndOfFile: |
| - ASSERT_NOT_REACHED(); |
| + NOTREACHED(); |
| break; |
| } |
| } |
| @@ -2718,8 +2718,10 @@ void HTMLTreeBuilder::finished() { |
| if (isParsingFragment()) |
| return; |
| - ASSERT(m_templateInsertionModes.isEmpty()); |
| - ASSERT(m_isAttached); |
| + DCHECK(m_templateInsertionModes.isEmpty()); |
| +#if DCHECK_IS_ON() |
|
Yoav Weiss
2017/03/16 10:24:44
Again, why the extra "#if"?
Hwanseung Lee
2017/03/16 12:34:02
it is cause of build fail without "#if DCHECK_IS_O
|
| + DCHECK(m_isAttached); |
| +#endif |
| // Warning, this may detach the parser. Do not do anything else after this. |
| m_tree.finishedParsing(); |
| } |