Commit e687e732 authored by tkent@chromium.org's avatar tkent@chromium.org

Oilpan: Replace RefPtr<Node> in core/svg/ with Oilpan transition types.

BUG=357163

Review URL: https://codereview.chromium.org/311193007

git-svn-id: svn://svn.chromium.org/blink/trunk@175529 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent ffa7b8b7
...@@ -60,6 +60,12 @@ SVGFilterElement::SVGFilterElement(Document& document) ...@@ -60,6 +60,12 @@ SVGFilterElement::SVGFilterElement(Document& document)
addToPropertyMap(m_filterRes); addToPropertyMap(m_filterRes);
} }
void SVGFilterElement::trace(Visitor* visitor)
{
visitor->trace(m_clientsToAdd);
SVGElement::trace(visitor);
}
void SVGFilterElement::setFilterRes(unsigned x, unsigned y) void SVGFilterElement::setFilterRes(unsigned x, unsigned y)
{ {
filterResX()->baseValue()->setValue(x); filterResX()->baseValue()->setValue(x);
...@@ -147,8 +153,8 @@ RenderObject* SVGFilterElement::createRenderer(RenderStyle*) ...@@ -147,8 +153,8 @@ RenderObject* SVGFilterElement::createRenderer(RenderStyle*)
{ {
RenderSVGResourceFilter* renderer = new RenderSVGResourceFilter(this); RenderSVGResourceFilter* renderer = new RenderSVGResourceFilter(this);
HashSet<RefPtr<Node> >::iterator layerEnd = m_clientsToAdd.end(); WillBeHeapHashSet<RefPtrWillBeMember<Node> >::iterator layerEnd = m_clientsToAdd.end();
for (HashSet<RefPtr<Node> >::iterator it = m_clientsToAdd.begin(); it != layerEnd; ++it) for (WillBeHeapHashSet<RefPtrWillBeMember<Node> >::iterator it = m_clientsToAdd.begin(); it != layerEnd; ++it)
renderer->addClientRenderLayer(it->get()); renderer->addClientRenderLayer(it->get());
m_clientsToAdd.clear(); m_clientsToAdd.clear();
......
...@@ -39,6 +39,7 @@ class SVGFilterElement FINAL : public SVGElement, ...@@ -39,6 +39,7 @@ class SVGFilterElement FINAL : public SVGElement,
public SVGURIReference { public SVGURIReference {
public: public:
DEFINE_NODE_FACTORY(SVGFilterElement); DEFINE_NODE_FACTORY(SVGFilterElement);
virtual void trace(Visitor*) OVERRIDE;
void setFilterRes(unsigned x, unsigned y); void setFilterRes(unsigned x, unsigned y);
void addClient(Node*); void addClient(Node*);
...@@ -75,7 +76,7 @@ private: ...@@ -75,7 +76,7 @@ private:
RefPtr<SVGAnimatedEnumeration<SVGUnitTypes::SVGUnitType> > m_primitiveUnits; RefPtr<SVGAnimatedEnumeration<SVGUnitTypes::SVGUnitType> > m_primitiveUnits;
RefPtr<SVGAnimatedIntegerOptionalInteger> m_filterRes; RefPtr<SVGAnimatedIntegerOptionalInteger> m_filterRes;
HashSet<RefPtr<Node> > m_clientsToAdd; WillBeHeapHashSet<RefPtrWillBeMember<Node> > m_clientsToAdd;
}; };
} }
......
...@@ -665,7 +665,7 @@ void SVGUseElement::expandUseElementsInShadowTree(Node* element) ...@@ -665,7 +665,7 @@ void SVGUseElement::expandUseElementsInShadowTree(Node* element)
if (subtreeContainsDisallowedElement(cloneParent.get())) if (subtreeContainsDisallowedElement(cloneParent.get()))
removeDisallowedElementsFromSubtree(*cloneParent); removeDisallowedElementsFromSubtree(*cloneParent);
RefPtr<Node> replacingElement(cloneParent.get()); RefPtrWillBeRawPtr<Node> replacingElement(cloneParent.get());
// Replace <use> with referenced content. // Replace <use> with referenced content.
ASSERT(use->parentNode()); ASSERT(use->parentNode());
...@@ -674,11 +674,11 @@ void SVGUseElement::expandUseElementsInShadowTree(Node* element) ...@@ -674,11 +674,11 @@ void SVGUseElement::expandUseElementsInShadowTree(Node* element)
// Expand the siblings because the *element* is replaced and we will // Expand the siblings because the *element* is replaced and we will
// lose the sibling chain when we are back from recursion. // lose the sibling chain when we are back from recursion.
element = replacingElement.get(); element = replacingElement.get();
for (RefPtr<Node> sibling = element->nextSibling(); sibling; sibling = sibling->nextSibling()) for (RefPtrWillBeRawPtr<Node> sibling = element->nextSibling(); sibling; sibling = sibling->nextSibling())
expandUseElementsInShadowTree(sibling.get()); expandUseElementsInShadowTree(sibling.get());
} }
for (RefPtr<Node> child = element->firstChild(); child; child = child->nextSibling()) for (RefPtrWillBeRawPtr<Node> child = element->firstChild(); child; child = child->nextSibling())
expandUseElementsInShadowTree(child.get()); expandUseElementsInShadowTree(child.get());
} }
...@@ -710,7 +710,7 @@ void SVGUseElement::expandSymbolElementsInShadowTree(Node* element) ...@@ -710,7 +710,7 @@ void SVGUseElement::expandSymbolElementsInShadowTree(Node* element)
if (subtreeContainsDisallowedElement(svgElement.get())) if (subtreeContainsDisallowedElement(svgElement.get()))
removeDisallowedElementsFromSubtree(*svgElement); removeDisallowedElementsFromSubtree(*svgElement);
RefPtr<Node> replacingElement(svgElement.get()); RefPtrWillBeRawPtr<Node> replacingElement(svgElement.get());
// Replace <symbol> with <svg>. // Replace <symbol> with <svg>.
element->parentNode()->replaceChild(svgElement.release(), element); element->parentNode()->replaceChild(svgElement.release(), element);
...@@ -718,11 +718,11 @@ void SVGUseElement::expandSymbolElementsInShadowTree(Node* element) ...@@ -718,11 +718,11 @@ void SVGUseElement::expandSymbolElementsInShadowTree(Node* element)
// Expand the siblings because the *element* is replaced and we will // Expand the siblings because the *element* is replaced and we will
// lose the sibling chain when we are back from recursion. // lose the sibling chain when we are back from recursion.
element = replacingElement.get(); element = replacingElement.get();
for (RefPtr<Node> sibling = element->nextSibling(); sibling; sibling = sibling->nextSibling()) for (RefPtrWillBeRawPtr<Node> sibling = element->nextSibling(); sibling; sibling = sibling->nextSibling())
expandSymbolElementsInShadowTree(sibling.get()); expandSymbolElementsInShadowTree(sibling.get());
} }
for (RefPtr<Node> child = element->firstChild(); child; child = child->nextSibling()) for (RefPtrWillBeRawPtr<Node> child = element->firstChild(); child; child = child->nextSibling())
expandSymbolElementsInShadowTree(child.get()); expandSymbolElementsInShadowTree(child.get());
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment