Bug 1317209 - Part 3: Add constness to GetEffectSet. r=hiro draft
authorBoris Chiou <boris.chiou@gmail.com>
Fri, 13 Jan 2017 17:06:35 +0800
changeset 466069 15dc731f342f81d6764e4bfaa360ca694c377c75
parent 466068 1e2415841e68b85fac380a87640f847572ed35d2
child 466070 738fb9a5905605ac6e466cd1d495df17991ae8b8
push id42776
push userbmo:boris.chiou@gmail.com
push dateWed, 25 Jan 2017 06:34:29 +0000
reviewershiro
bugs1317209
milestone53.0a1
Bug 1317209 - Part 3: Add constness to GetEffectSet. r=hiro We need to call GetEffectSet() from Servo code, which passes an immutable reference to GeckoElement, so it's better to make dom::Element const. MozReview-Commit-ID: GqQEB7BwkJA
dom/animation/EffectSet.cpp
dom/animation/EffectSet.h
--- a/dom/animation/EffectSet.cpp
+++ b/dom/animation/EffectSet.cpp
@@ -34,17 +34,17 @@ EffectSet::Traverse(nsCycleCollectionTra
 {
   for (auto iter = mEffects.Iter(); !iter.Done(); iter.Next()) {
     CycleCollectionNoteChild(aCallback, iter.Get()->GetKey(),
                              "EffectSet::mEffects[]", aCallback.Flags());
   }
 }
 
 /* static */ EffectSet*
-EffectSet::GetEffectSet(dom::Element* aElement,
+EffectSet::GetEffectSet(const dom::Element* aElement,
                         CSSPseudoElementType aPseudoType)
 {
   nsIAtom* propName = GetEffectSetPropertyAtom(aPseudoType);
   return static_cast<EffectSet*>(aElement->GetProperty(propName));
 }
 
 /* static */ EffectSet*
 EffectSet::GetEffectSet(const nsIFrame* aFrame)
--- a/dom/animation/EffectSet.h
+++ b/dom/animation/EffectSet.h
@@ -52,17 +52,17 @@ public:
     MOZ_COUNT_DTOR(EffectSet);
   }
   static void PropertyDtor(void* aObject, nsIAtom* aPropertyName,
                            void* aPropertyValue, void* aData);
 
   // Methods for supporting cycle-collection
   void Traverse(nsCycleCollectionTraversalCallback& aCallback);
 
-  static EffectSet* GetEffectSet(dom::Element* aElement,
+  static EffectSet* GetEffectSet(const dom::Element* aElement,
                                  CSSPseudoElementType aPseudoType);
   static EffectSet* GetEffectSet(const nsIFrame* aFrame);
   static EffectSet* GetOrCreateEffectSet(dom::Element* aElement,
                                          CSSPseudoElementType aPseudoType);
   static void DestroyEffectSet(dom::Element* aElement,
                                CSSPseudoElementType aPseudoType);
 
   void AddEffect(dom::KeyframeEffectReadOnly& aEffect);