Index: Source/core/html/parser/HTMLStackItem.h |
diff --git a/Source/core/html/parser/HTMLStackItem.h b/Source/core/html/parser/HTMLStackItem.h |
index 038e7f0c7274e4164d8ef767179c1e9e1734b313..3b66cfdc3aacf4e777965fcb780a22c1445d2518 100644 |
--- a/Source/core/html/parser/HTMLStackItem.h |
+++ b/Source/core/html/parser/HTMLStackItem.h |
@@ -39,7 +39,7 @@ namespace WebCore { |
class ContainerNode; |
-class HTMLStackItem : public RefCounted<HTMLStackItem> { |
+class HTMLStackItem : public RefCountedWillBeGarbageCollectedFinalized<HTMLStackItem> { |
public: |
enum ItemType { |
ItemForContextElement, |
@@ -47,15 +47,15 @@ public: |
}; |
// Used by document fragment node and context element. |
- static PassRefPtr<HTMLStackItem> create(PassRefPtr<ContainerNode> node, ItemType type) |
+ static PassRefPtrWillBeRawPtr<HTMLStackItem> create(PassRefPtrWillBeRawPtr<ContainerNode> node, ItemType type) |
{ |
- return adoptRef(new HTMLStackItem(node, type)); |
+ return adoptRefWillBeNoop(new HTMLStackItem(node, type)); |
} |
// Used by HTMLElementStack and HTMLFormattingElementList. |
- static PassRefPtr<HTMLStackItem> create(PassRefPtr<ContainerNode> node, AtomicHTMLToken* token, const AtomicString& namespaceURI = HTMLNames::xhtmlNamespaceURI) |
+ static PassRefPtrWillBeRawPtr<HTMLStackItem> create(PassRefPtrWillBeRawPtr<ContainerNode> node, AtomicHTMLToken* token, const AtomicString& namespaceURI = HTMLNames::xhtmlNamespaceURI) |
{ |
- return adoptRef(new HTMLStackItem(node, token, namespaceURI)); |
+ return adoptRefWillBeNoop(new HTMLStackItem(node, token, namespaceURI)); |
} |
Element* element() const { return toElement(m_node.get()); } |
@@ -207,8 +207,10 @@ public: |
|| tagName == HTMLNames::xmpTag; |
} |
+ void trace(Visitor* visitor) { visitor->trace(m_node); } |
+ |
private: |
- HTMLStackItem(PassRefPtr<ContainerNode> node, ItemType type) |
+ HTMLStackItem(PassRefPtrWillBeRawPtr<ContainerNode> node, ItemType type) |
: m_node(node) |
{ |
switch (type) { |
@@ -223,7 +225,7 @@ private: |
} |
} |
- HTMLStackItem(PassRefPtr<ContainerNode> node, AtomicHTMLToken* token, const AtomicString& namespaceURI = HTMLNames::xhtmlNamespaceURI) |
+ HTMLStackItem(PassRefPtrWillBeRawPtr<ContainerNode> node, AtomicHTMLToken* token, const AtomicString& namespaceURI = HTMLNames::xhtmlNamespaceURI) |
: m_node(node) |
, m_tokenLocalName(token->name()) |
, m_tokenAttributes(token->attributes()) |
@@ -232,7 +234,7 @@ private: |
{ |
} |
- RefPtr<ContainerNode> m_node; |
+ RefPtrWillBeMember<ContainerNode> m_node; |
AtomicString m_tokenLocalName; |
Vector<Attribute> m_tokenAttributes; |