| Index: Source/core/editing/FormatBlockCommand.cpp
|
| diff --git a/Source/core/editing/FormatBlockCommand.cpp b/Source/core/editing/FormatBlockCommand.cpp
|
| index 6b5337ccaaa3161832bb9d707d8b937825a7c83b..661dac3d9d2cd2493c1312d1a2782caf2433060e 100644
|
| --- a/Source/core/editing/FormatBlockCommand.cpp
|
| +++ b/Source/core/editing/FormatBlockCommand.cpp
|
| @@ -115,34 +115,38 @@ Element* FormatBlockCommand::elementForFormatBlockCommand(Range* range)
|
| return commonAncestor->isElementNode() ? toElement(commonAncestor) : 0;
|
| }
|
|
|
| +// FIXME: This function doesn't work properly for XHTML documents that use a non-standard prefix.
|
| bool isElementForFormatBlock(const QualifiedName& tagName)
|
| {
|
| - DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, blockTags, ());
|
| - if (blockTags.isEmpty()) {
|
| - blockTags.add(addressTag);
|
| - blockTags.add(articleTag);
|
| - blockTags.add(asideTag);
|
| - blockTags.add(blockquoteTag);
|
| - blockTags.add(ddTag);
|
| - blockTags.add(divTag);
|
| - blockTags.add(dlTag);
|
| - blockTags.add(dtTag);
|
| - blockTags.add(footerTag);
|
| - blockTags.add(h1Tag);
|
| - blockTags.add(h2Tag);
|
| - blockTags.add(h3Tag);
|
| - blockTags.add(h4Tag);
|
| - blockTags.add(h5Tag);
|
| - blockTags.add(h6Tag);
|
| - blockTags.add(headerTag);
|
| - blockTags.add(hgroupTag);
|
| - blockTags.add(mainTag);
|
| - blockTags.add(navTag);
|
| - blockTags.add(pTag);
|
| - blockTags.add(preTag);
|
| - blockTags.add(sectionTag);
|
| + DEFINE_STATIC_LOCAL(QualifiedNameLiteralSet, blockTags, ());
|
| + if (!blockTags.isInitialized()) {
|
| + static const QualifiedName* blockTagData[] = {
|
| + &addressTag,
|
| + &articleTag,
|
| + &asideTag,
|
| + &blockquoteTag,
|
| + &ddTag,
|
| + &divTag,
|
| + &dlTag,
|
| + &dtTag,
|
| + &footerTag,
|
| + &h1Tag,
|
| + &h2Tag,
|
| + &h3Tag,
|
| + &h4Tag,
|
| + &h5Tag,
|
| + &h6Tag,
|
| + &headerTag,
|
| + &hgroupTag,
|
| + &mainTag,
|
| + &navTag,
|
| + &pTag,
|
| + &preTag,
|
| + §ionTag,
|
| + };
|
| + blockTags.init(blockTagData, WTF_ARRAY_LENGTH(blockTagData));
|
| }
|
| - return blockTags.contains(tagName);
|
| + return blockTags.contains(&tagName);
|
| }
|
|
|
| Node* enclosingBlockToSplitTreeTo(Node* startNode)
|
|
|