| Index: cc/layers/texture_layer_unittest.cc
|
| diff --git a/cc/layers/texture_layer_unittest.cc b/cc/layers/texture_layer_unittest.cc
|
| index aa08e9f81ee9a854af56afa1ae2527637dd25656..1d16a89d48e0d606093f759fde2d92ffd98d5ab7 100644
|
| --- a/cc/layers/texture_layer_unittest.cc
|
| +++ b/cc/layers/texture_layer_unittest.cc
|
| @@ -1022,7 +1022,7 @@ class TextureLayerWithMailboxMainThreadDeleted : public LayerTreeTest {
|
| PostSetNeedsCommitToMainThread();
|
| }
|
|
|
| - virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| + virtual void DidCommit() OVERRIDE {
|
| switch (layer_tree_host()->source_frame_number()) {
|
| case 1:
|
| // Delete the TextureLayer on the main thread while the mailbox is in
|
| @@ -1090,20 +1090,29 @@ class TextureLayerWithMailboxImplThreadDeleted : public LayerTreeTest {
|
| PostSetNeedsCommitToMainThread();
|
| }
|
|
|
| - virtual void DidCommitAndDrawFrame() OVERRIDE {
|
| - switch (layer_tree_host()->source_frame_number()) {
|
| - case 1:
|
| + virtual void DidCommit() OVERRIDE {
|
| + if (layer_tree_host()->source_frame_number() == 1) {
|
| // Remove the TextureLayer on the main thread while the mailbox is in
|
| // the impl tree, but don't delete the TextureLayer until after the impl
|
| // tree side is deleted.
|
| layer_->RemoveFromParent();
|
| - break;
|
| - case 2:
|
| - layer_ = NULL;
|
| - break;
|
| }
|
| }
|
|
|
| + virtual void SwapBuffersCompleteOnThread(LayerTreeHostImpl *impl) OVERRIDE {
|
| + if (impl->active_tree()->source_frame_number() == 1) {
|
| + proxy()->MainThreadTaskRunner()->PostTask(
|
| + FROM_HERE,
|
| + base::Bind(
|
| + &TextureLayerWithMailboxImplThreadDeleted::DeleteTextureLayer,
|
| + base::Unretained(this)));
|
| + }
|
| + }
|
| +
|
| + virtual void DeleteTextureLayer() {
|
| + layer_ = NULL;
|
| + }
|
| +
|
| virtual void AfterTest() OVERRIDE {
|
| EXPECT_EQ(1, callback_count_);
|
| }
|
|
|