| Index: Source/core/html/parser/CompactHTMLToken.cpp
|
| diff --git a/Source/core/html/parser/CompactHTMLToken.cpp b/Source/core/html/parser/CompactHTMLToken.cpp
|
| index fd4026bf0409ff3ae02142616dd968e5d1c395b0..2291a776d6926b077f75ad8cc03c7300849431e7 100644
|
| --- a/Source/core/html/parser/CompactHTMLToken.cpp
|
| +++ b/Source/core/html/parser/CompactHTMLToken.cpp
|
| @@ -27,13 +27,14 @@
|
| #include "core/html/parser/CompactHTMLToken.h"
|
|
|
| #include "core/dom/QualifiedName.h"
|
| +#include "core/html/parser/HTMLIdentifier.h"
|
| #include "core/html/parser/HTMLParserIdioms.h"
|
|
|
| namespace WebCore {
|
|
|
| struct SameSizeAsCompactHTMLToken {
|
| unsigned bitfields;
|
| - HTMLIdentifier data;
|
| + String data;
|
| Vector<Attribute> vector;
|
| TextPosition textPosition;
|
| };
|
| @@ -51,10 +52,11 @@ CompactHTMLToken::CompactHTMLToken(const HTMLToken* token, const TextPosition& t
|
| ASSERT_NOT_REACHED();
|
| break;
|
| case HTMLToken::DOCTYPE: {
|
| - m_data = HTMLIdentifier(token->name(), Likely8Bit);
|
| + m_data = HTMLIdentifier::create(token->name(), Likely8Bit);
|
| +
|
| // There is only 1 DOCTYPE token per document, so to avoid increasing the
|
| // size of CompactHTMLToken, we just use the m_attributes vector.
|
| - m_attributes.append(Attribute(HTMLIdentifier(token->publicIdentifier(), Likely8Bit), String(token->systemIdentifier())));
|
| + m_attributes.append(Attribute(HTMLIdentifier::create(token->publicIdentifier(), Likely8Bit), String(token->systemIdentifier())));
|
| m_doctypeForcesQuirks = token->forceQuirks();
|
| break;
|
| }
|
| @@ -63,7 +65,7 @@ CompactHTMLToken::CompactHTMLToken(const HTMLToken* token, const TextPosition& t
|
| case HTMLToken::StartTag:
|
| m_attributes.reserveInitialCapacity(token->attributes().size());
|
| for (Vector<HTMLToken::Attribute>::const_iterator it = token->attributes().begin(); it != token->attributes().end(); ++it)
|
| - m_attributes.append(Attribute(HTMLIdentifier(it->name, Likely8Bit), StringImpl::create8BitIfPossible(it->value)));
|
| + m_attributes.append(Attribute(HTMLIdentifier::create(it->name, Likely8Bit), StringImpl::create8BitIfPossible(it->value)));
|
| // Fall through!
|
| case HTMLToken::EndTag:
|
| m_selfClosing = token->selfClosing();
|
| @@ -71,7 +73,7 @@ CompactHTMLToken::CompactHTMLToken(const HTMLToken* token, const TextPosition& t
|
| case HTMLToken::Comment:
|
| case HTMLToken::Character: {
|
| m_isAll8BitData = token->isAll8BitData();
|
| - m_data = HTMLIdentifier(token->data(), token->isAll8BitData() ? Force8Bit : Force16Bit);
|
| + m_data = HTMLIdentifier::create(token->data(), token->isAll8BitData() ? Force8Bit : Force16Bit);
|
| break;
|
| }
|
| default:
|
|
|