Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2034)

Unified Diff: Source/core/svg/properties/SVGAnimatedProperty.h

Issue 1325433005: Oilpan: Fix SVGElement leaks introduced in 201698 (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/svg/properties/SVGAnimatedProperty.h
diff --git a/Source/core/svg/properties/SVGAnimatedProperty.h b/Source/core/svg/properties/SVGAnimatedProperty.h
index 7e7b3caa4588a861daade3027bd6195218e75340..04e8df4cf5a9bed7c7b539dd3deba79e609a6e5d 100644
--- a/Source/core/svg/properties/SVGAnimatedProperty.h
+++ b/Source/core/svg/properties/SVGAnimatedProperty.h
@@ -92,7 +92,6 @@ public:
DEFINE_INLINE_VIRTUAL_TRACE()
{
- visitor->trace(m_contextElement);
}
protected:
@@ -103,7 +102,22 @@ private:
bool m_isReadOnly;
// This reference is kept alive from V8 wrapper
- RawPtrWillBeMember<SVGElement> m_contextElement;
+ // TODO(oilpan): This should be a Member. Currently we cannot do it because
+ // it creates a cycle as follows:
+ // SVGInterporation =(Persistent)=>
+ // SVGAnimatedProperty =(Member)=>
+ // SVGElement =(Member)=>
+ // ElementRareData =(Member)=>
+ // ElementAnimations =(part of object)=>
+ // CSSAnimations =(part of object)=>
+ // CSSAnimationUpdate =(Member)=>
+ // NewTransition =(Member)=>
+ // InertEffect =(Member)=>
+ // EffectModel =(RefPtr)=>
+ // InterpolationEffect =(RefPtr)=>
+ // InterpolationRecord =(RefPtr)=>
+ // SVGInterpolation
+ SVGElement* m_contextElement;
sof 2015/09/04 07:16:49 Add a GC_PLUGIN_IGNORE() (and a tracking issue, if
haraken 2015/09/04 07:18:03 Will do in a follow-up (to fix the leak in oilpan
const QualifiedName& m_attributeName;
};
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698