| Index: cc/output/texture_mailbox_deleter.cc
|
| diff --git a/cc/output/texture_mailbox_deleter.cc b/cc/output/texture_mailbox_deleter.cc
|
| index 642495fc063840b808d1cddc36616dcfa56b02b2..27154c7394e0476a679c95b5881d4746b87f8971 100644
|
| --- a/cc/output/texture_mailbox_deleter.cc
|
| +++ b/cc/output/texture_mailbox_deleter.cc
|
| @@ -63,8 +63,7 @@ scoped_ptr<SingleReleaseCallback> TextureMailboxDeleter::GetReleaseCallback(
|
| // class is alive. So we guard it with a WeakPtr.
|
| ReleaseCallback run_impl_callback(
|
| base::Bind(&TextureMailboxDeleter::RunDeleteTextureOnImplThread,
|
| - weak_ptr_factory_.GetWeakPtr(),
|
| - impl_callbacks_.back()));
|
| + weak_ptr_factory_.GetWeakPtr(), impl_callbacks_.back().get()));
|
|
|
| // Provide a callback for the main thread that posts back to the impl
|
| // thread.
|
| @@ -84,9 +83,9 @@ void TextureMailboxDeleter::RunDeleteTextureOnImplThread(
|
| const gpu::SyncToken& sync_token,
|
| bool is_lost) {
|
| for (size_t i = 0; i < impl_callbacks_.size(); ++i) {
|
| - if (impl_callbacks_.at(i) == impl_callback) {
|
| + if (impl_callbacks_[i].get() == impl_callback) {
|
| // Run the callback, then destroy it here on the impl thread.
|
| - impl_callbacks_.at(i)->Run(sync_token, is_lost);
|
| + impl_callbacks_[i]->Run(sync_token, is_lost);
|
| impl_callbacks_.erase(impl_callbacks_.begin() + i);
|
| return;
|
| }
|
|
|