| Index: Source/WebCore/svg/SVGDocumentExtensions.cpp
|
| ===================================================================
|
| --- Source/WebCore/svg/SVGDocumentExtensions.cpp (revision 78133)
|
| +++ Source/WebCore/svg/SVGDocumentExtensions.cpp (working copy)
|
| @@ -93,8 +93,12 @@
|
| // FIXME: Eventually every "Time Container" will need a way to latch on to some global timer
|
| // starting animations for a document will do this "latching"
|
| #if ENABLE(SVG_ANIMATION)
|
| - HashSet<SVGSVGElement*>::iterator end = m_timeContainers.end();
|
| - for (HashSet<SVGSVGElement*>::iterator itr = m_timeContainers.begin(); itr != end; ++itr)
|
| + // FIXME: We hold a ref pointers to prevent a shadow tree from getting removed out from underneath us.
|
| + // In the future we should refactor the use-element to avoid this. See https://webkit.org/b/53704
|
| + Vector<RefPtr<SVGSVGElement> > timeContainers;
|
| + timeContainers.appendRange(m_timeContainers.begin(), m_timeContainers.end());
|
| + Vector<RefPtr<SVGSVGElement> >::iterator end = timeContainers.end();
|
| + for (Vector<RefPtr<SVGSVGElement> >::iterator itr = timeContainers.begin(); itr != end; ++itr)
|
| (*itr)->timeContainer()->begin();
|
| #endif
|
| }
|
|
|