Index: cc/TreeSynchronizer.cpp |
diff --git a/cc/TreeSynchronizer.cpp b/cc/TreeSynchronizer.cpp |
index 9b42e7330a6df0d6d42494b478b2a36e1a19d344..9559cc2ad5c64bf6e2bbcd3a6143828f88c010ac 100644 |
--- a/cc/TreeSynchronizer.cpp |
+++ b/cc/TreeSynchronizer.cpp |
@@ -36,9 +36,9 @@ void TreeSynchronizer::collectExistingCCLayerImplRecursive(OwnPtrCCLayerImplMap& |
if (!ccLayerImpl) |
return; |
- Vector<OwnPtr<CCLayerImpl> >& children = ccLayerImpl->m_children; |
+ OwnPtrVector<CCLayerImpl>& children = ccLayerImpl->m_children; |
for (size_t i = 0; i < children.size(); ++i) |
- collectExistingCCLayerImplRecursive(oldLayers, children[i].release()); |
+ collectExistingCCLayerImplRecursive(oldLayers, children.take(i)); |
enne (OOO)
2012/09/18 16:59:05
This looks like a bug. std::vector::erase removes
jamesr
2012/09/18 20:49:35
Whoops - I think you're right. So how do the tests
enne (OOO)
2012/09/18 21:51:18
The tests pass because tree sync recreates new lay
|
collectExistingCCLayerImplRecursive(oldLayers, ccLayerImpl->m_maskLayer.release()); |
collectExistingCCLayerImplRecursive(oldLayers, ccLayerImpl->m_replicaLayer.release()); |