| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Peter Kelly (pmk@post.com) | 2 * Copyright (C) 2000 Peter Kelly (pmk@post.com) |
| 3 * Copyright (C) 2005, 2006, 2008, 2014 Apple Inc. All rights reserved. | 3 * Copyright (C) 2005, 2006, 2008, 2014 Apple Inc. All rights reserved. |
| 4 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 4 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
| 5 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) | 5 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) |
| 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 7 * Copyright (C) 2008 Holger Hans Peter Freyther | 7 * Copyright (C) 2008 Holger Hans Peter Freyther |
| 8 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 8 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 9 * | 9 * |
| 10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
| (...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 417 | 417 |
| 418 // doEnd() call above can detach the parser and null out its document. | 418 // doEnd() call above can detach the parser and null out its document. |
| 419 // In that case, we just bail out. | 419 // In that case, we just bail out. |
| 420 if (isDetached()) | 420 if (isDetached()) |
| 421 return; | 421 return; |
| 422 | 422 |
| 423 // doEnd() could process a script tag, thus pausing parsing. | 423 // doEnd() could process a script tag, thus pausing parsing. |
| 424 if (m_parserPaused) | 424 if (m_parserPaused) |
| 425 return; | 425 return; |
| 426 | 426 |
| 427 if (m_sawError) { | 427 // stopParsing() calls insertErrorMessageBlock() if there was a parsing |
| 428 // error. Avoid showing the error message block twice. |
| 429 if (m_sawError && !isStopped()) { |
| 428 insertErrorMessageBlock(); | 430 insertErrorMessageBlock(); |
| 429 } else { | 431 } else { |
| 430 exitText(); | 432 exitText(); |
| 431 document()->styleResolverChanged(); | 433 document()->styleResolverChanged(); |
| 432 } | 434 } |
| 433 | 435 |
| 434 if (isParsing()) | 436 if (isParsing()) |
| 435 prepareToStopParsing(); | 437 prepareToStopParsing(); |
| 436 document()->setReadyState(Document::Interactive); | 438 document()->setReadyState(Document::Interactive); |
| 437 clearCurrentNodeStack(); | 439 clearCurrentNodeStack(); |
| (...skipping 1108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1546 TextPosition XMLDocumentParser::textPosition() const | 1548 TextPosition XMLDocumentParser::textPosition() const |
| 1547 { | 1549 { |
| 1548 xmlParserCtxtPtr context = this->context(); | 1550 xmlParserCtxtPtr context = this->context(); |
| 1549 if (!context) | 1551 if (!context) |
| 1550 return TextPosition::minimumPosition(); | 1552 return TextPosition::minimumPosition(); |
| 1551 return TextPosition(OrdinalNumber::fromOneBasedInt(context->input->line), Or
dinalNumber::fromOneBasedInt(context->input->col)); | 1553 return TextPosition(OrdinalNumber::fromOneBasedInt(context->input->line), Or
dinalNumber::fromOneBasedInt(context->input->col)); |
| 1552 } | 1554 } |
| 1553 | 1555 |
| 1554 void XMLDocumentParser::stopParsing() | 1556 void XMLDocumentParser::stopParsing() |
| 1555 { | 1557 { |
| 1558 if (m_sawError) |
| 1559 insertErrorMessageBlock(); |
| 1556 DocumentParser::stopParsing(); | 1560 DocumentParser::stopParsing(); |
| 1557 if (context()) | 1561 if (context()) |
| 1558 xmlStopParser(context()); | 1562 xmlStopParser(context()); |
| 1559 } | 1563 } |
| 1560 | 1564 |
| 1561 void XMLDocumentParser::resumeParsing() | 1565 void XMLDocumentParser::resumeParsing() |
| 1562 { | 1566 { |
| 1563 ASSERT(!isDetached()); | 1567 ASSERT(!isDetached()); |
| 1564 ASSERT(m_parserPaused); | 1568 ASSERT(m_parserPaused); |
| 1565 | 1569 |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1666 sax.initialized = XML_SAX2_MAGIC; | 1670 sax.initialized = XML_SAX2_MAGIC; |
| 1667 RefPtr<XMLParserContext> parser = XMLParserContext::createStringParser(&sax,
&state); | 1671 RefPtr<XMLParserContext> parser = XMLParserContext::createStringParser(&sax,
&state); |
| 1668 String parseString = "<?xml version=\"1.0\"?><attrs " + string + " />"; | 1672 String parseString = "<?xml version=\"1.0\"?><attrs " + string + " />"; |
| 1669 parseChunk(parser->context(), parseString); | 1673 parseChunk(parser->context(), parseString); |
| 1670 finishParsing(parser->context()); | 1674 finishParsing(parser->context()); |
| 1671 attrsOK = state.gotAttributes; | 1675 attrsOK = state.gotAttributes; |
| 1672 return state.attributes; | 1676 return state.attributes; |
| 1673 } | 1677 } |
| 1674 | 1678 |
| 1675 } // namespace blink | 1679 } // namespace blink |
| OLD | NEW |