TransformOperations currently inherits from Vector. It should have a member variable instead. Of course, it already does have a vector as a member variable, so really this whole class needs to be reworked. We should also make the difference between TransformOperation and TransformOperations clearer.
and by "clearer" I mean "more clear" :)
Same applies to AnimationList
Created attachment 23541 [details] Patch to fix bug
I also fixed AnimationList to no longer inherit from Vector<>
Comment on attachment 23541 [details] Patch to fix bug + Animation* animation(size_t i) { return m_animations[i].get(); } + const Animation* animation(size_t i) const { return m_animations[i].get(); } It seems like using operator[] here would be cleaner. r=me
Committed r36634 M WebCore/rendering/RenderLayer.cpp M WebCore/rendering/style/AnimationList.cpp M WebCore/rendering/style/TransformOperations.cpp M WebCore/rendering/style/StyleRareNonInheritedData.cpp M WebCore/rendering/style/RenderStyle.cpp M WebCore/rendering/style/RenderStyle.h M WebCore/rendering/style/AnimationList.h M WebCore/rendering/style/TransformOperations.h M WebCore/ChangeLog M WebCore/css/CSSStyleSelector.cpp M WebCore/css/CSSComputedStyleDeclaration.cpp M WebCore/page/animation/CompositeAnimation.cpp M WebCore/page/animation/KeyframeAnimation.cpp M WebCore/page/animation/AnimationBase.cpp M WebCore/page/animation/ImplicitAnimation.cpp
This led to some pretty ugly code. I think AnimationList and TransformOperations should have operator[] and a size() method.