| Index: Source/core/svg/properties/SVGAnimatedProperty.cpp
|
| diff --git a/Source/core/svg/properties/SVGAnimatedProperty.cpp b/Source/core/svg/properties/SVGAnimatedProperty.cpp
|
| index 0922ac9872f36ec444cd6192b5c73f991d93da1a..e15971cd355a8b18714a6511f1c78ec8916d35f2 100644
|
| --- a/Source/core/svg/properties/SVGAnimatedProperty.cpp
|
| +++ b/Source/core/svg/properties/SVGAnimatedProperty.cpp
|
| @@ -36,37 +36,18 @@ SVGAnimatedProperty::SVGAnimatedProperty(SVGElement* contextElement, const Quali
|
|
|
| SVGAnimatedProperty::~SVGAnimatedProperty()
|
| {
|
| - // Assure that animationEnded() was called, if animationStarted() was called before.
|
| - ASSERT(!m_isAnimating);
|
| -}
|
| -
|
| -void SVGAnimatedProperty::detachAnimatedPropertiesWrappersForElement(SVGElement* element)
|
| -{
|
| - Cache* cache = animatedPropertyCache();
|
| - const Cache::const_iterator end = cache->end();
|
| - for (Cache::const_iterator it = cache->begin(); it != end; ++it) {
|
| - if (it->key.m_element == element)
|
| - it->value->detachWrappers();
|
| - }
|
| -}
|
| -
|
| -void SVGAnimatedProperty::detachAnimatedPropertiesForElement(SVGElement* element)
|
| -{
|
| - // Remove wrappers from cache.
|
| + // Remove wrapper from cache.
|
| Cache* cache = animatedPropertyCache();
|
| -
|
| - Vector<SVGAnimatedPropertyDescription> keysToRemove;
|
| -
|
| const Cache::const_iterator end = cache->end();
|
| for (Cache::const_iterator it = cache->begin(); it != end; ++it) {
|
| - if (it->key.m_element == element) {
|
| - it->value->resetContextElement();
|
| - keysToRemove.append(it->key);
|
| + if (it->value == this) {
|
| + cache->remove(it->key);
|
| + break;
|
| }
|
| }
|
|
|
| - for (Vector<SVGAnimatedPropertyDescription>::const_iterator it = keysToRemove.begin(); it != keysToRemove.end(); ++it)
|
| - cache->remove(*it);
|
| + // Assure that animationEnded() was called, if animationStarted() was called before.
|
| + ASSERT(!m_isAnimating);
|
| }
|
|
|
| void SVGAnimatedProperty::commitChange()
|
|
|