diff --git a/layout/svg/nsSVGEffects.cpp b/layout/svg/nsSVGEffects.cpp index 874b363d7eb3..b995eafbeade 100644 --- a/layout/svg/nsSVGEffects.cpp +++ b/layout/svg/nsSVGEffects.cpp @@ -223,20 +223,12 @@ nsSVGFilterProperty::nsSVGFilterProperty(const nsTArray &aFilters if (aFilters[i].GetType() != NS_STYLE_FILTER_URL) continue; - nsSVGFilterReference *reference = + nsRefPtr reference = new nsSVGFilterReference(aFilters[i].GetURL(), aFilteredFrame); - NS_ADDREF(reference); mReferences.AppendElement(reference); } } -nsSVGFilterProperty::~nsSVGFilterProperty() -{ - for (uint32_t i = 0; i < mReferences.Length(); i++) { - NS_RELEASE(mReferences[i]); - } -} - bool nsSVGFilterProperty::ReferencesValidResources() { diff --git a/layout/svg/nsSVGEffects.h b/layout/svg/nsSVGEffects.h index 101ce9388bf5..525746fe7e40 100644 --- a/layout/svg/nsSVGEffects.h +++ b/layout/svg/nsSVGEffects.h @@ -214,10 +214,10 @@ public: NS_DECL_ISUPPORTS protected: - virtual ~nsSVGFilterProperty(); + virtual ~nsSVGFilterProperty() {} private: - nsTArray mReferences; + nsTArray> mReferences; }; class nsSVGMarkerProperty : public nsSVGIDRenderingObserver {