Chromium Code Reviews| Index: Source/core/html/parser/HTMLSourceTracker.cpp |
| diff --git a/Source/core/html/parser/HTMLSourceTracker.cpp b/Source/core/html/parser/HTMLSourceTracker.cpp |
| index af729fa4dc87ebd36dac4b7a53590a37dcaeeb9a..0c4e03e5a5f190eacb78c0aa0e47ada416b4221e 100644 |
| --- a/Source/core/html/parser/HTMLSourceTracker.cpp |
| +++ b/Source/core/html/parser/HTMLSourceTracker.cpp |
| @@ -31,25 +31,28 @@ |
| namespace WebCore { |
| -HTMLSourceTracker::HTMLSourceTracker() |
| +HTMLSourceTracker::HTMLSourceTracker() : m_isStarted(false) |
|
abarth-chromium
2014/07/01 14:44:09
The : m_isStarted goes on the next line (indented
|
| { |
| } |
| void HTMLSourceTracker::start(SegmentedString& currentInput, HTMLTokenizer* tokenizer, HTMLToken& token) |
| { |
| - if (token.type() == HTMLToken::Uninitialized) { |
| + if (token.type() == HTMLToken::Uninitialized && !m_isStarted) { |
| m_previousSource.clear(); |
| if (tokenizer->numberOfBufferedCharacters()) |
| m_previousSource = tokenizer->bufferedCharacters(); |
| } else |
| m_previousSource.append(m_currentSource); |
| + m_isStarted = true; |
| m_currentSource = currentInput; |
| token.setBaseOffset(m_currentSource.numberOfCharactersConsumed() - m_previousSource.length()); |
| } |
| void HTMLSourceTracker::end(SegmentedString& currentInput, HTMLTokenizer* tokenizer, HTMLToken& token) |
| { |
| + m_isStarted = false; |
| + |
| m_cachedSourceForToken = String(); |
| // FIXME: This work should really be done by the HTMLTokenizer. |