Index: cc/trees/layer_tree_impl.cc |
diff --git a/cc/trees/layer_tree_impl.cc b/cc/trees/layer_tree_impl.cc |
index 2c0efdd594f52f1e8fba4be3f1c8e3dbe806b661..96df2d3a5fb27eeb53a9da3718c27b6339f59144 100644 |
--- a/cc/trees/layer_tree_impl.cc |
+++ b/cc/trees/layer_tree_impl.cc |
@@ -94,6 +94,8 @@ LayerTreeImpl::LayerTreeImpl(LayerTreeHostImpl* layer_tree_host_impl) |
} |
LayerTreeImpl::~LayerTreeImpl() { |
+ BreakSwapPromises(SwapPromise::SWAP_FAILS); |
+ |
// Need to explicitly clear the tree prior to destroying this so that |
// the LayerTreeImpl pointer is still valid in the LayerImpl dtor. |
DCHECK(!root_layer_); |
@@ -923,8 +925,6 @@ gfx::Vector2dF LayerTreeImpl::GetDelegatedScrollOffset(LayerImpl* layer) { |
void LayerTreeImpl::QueueSwapPromise(scoped_ptr<SwapPromise> swap_promise) { |
DCHECK(swap_promise); |
- if (swap_promise_list_.size() > kMaxQueuedSwapPromiseNumber) |
- BreakSwapPromises(SwapPromise::SWAP_PROMISE_LIST_OVERFLOW); |
swap_promise_list_.push_back(swap_promise.Pass()); |
} |