| Index: cc/trees/layer_tree_host_unittest_copyrequest.cc
|
| diff --git a/cc/trees/layer_tree_host_unittest_copyrequest.cc b/cc/trees/layer_tree_host_unittest_copyrequest.cc
|
| index e27498a396e5167e8d32cbd3b5fb6a8e1cb16845..3ae9e6ffafe2f8ed2cba53fa48c1199813735139 100644
|
| --- a/cc/trees/layer_tree_host_unittest_copyrequest.cc
|
| +++ b/cc/trees/layer_tree_host_unittest_copyrequest.cc
|
| @@ -774,8 +774,8 @@ class LayerTreeHostCopyRequestTestLostOutputSurface
|
| EndTest();
|
| }
|
|
|
| - void SwapBuffersOnThread(LayerTreeHostImpl* impl, bool result) override {
|
| - switch (impl->active_tree()->source_frame_number()) {
|
| + void SwapBuffersCompleteOnThread() override {
|
| + switch (num_swaps_++) {
|
| case 0:
|
| // The layers have been drawn, so their textures have been allocated.
|
| EXPECT_FALSE(result_);
|
| @@ -829,6 +829,7 @@ class LayerTreeHostCopyRequestTestLostOutputSurface
|
|
|
| scoped_refptr<TestContextProvider> first_context_provider_;
|
| scoped_refptr<TestContextProvider> second_context_provider_;
|
| + int num_swaps_ = 0;
|
| size_t num_textures_without_readback_ = 0;
|
| size_t num_textures_after_loss_ = 0;
|
| FakeContentLayerClient client_;
|
| @@ -864,8 +865,6 @@ class LayerTreeHostCopyRequestTestCountTextures
|
| }
|
|
|
| void BeginTest() override {
|
| - num_textures_without_readback_ = 0;
|
| - num_textures_with_readback_ = 0;
|
| waited_sync_token_after_readback_.Clear();
|
| PostSetNeedsCommitToMainThread();
|
| }
|
| @@ -882,8 +881,8 @@ class LayerTreeHostCopyRequestTestCountTextures
|
| }
|
| }
|
|
|
| - void SwapBuffersOnThread(LayerTreeHostImpl* impl, bool result) override {
|
| - switch (impl->active_tree()->source_frame_number()) {
|
| + void SwapBuffersCompleteOnThread() override {
|
| + switch (num_swaps_++) {
|
| case 0:
|
| // The layers have been drawn, so their textures have been allocated.
|
| num_textures_without_readback_ =
|
| @@ -907,8 +906,9 @@ class LayerTreeHostCopyRequestTestCountTextures
|
| virtual void DoEndTest() { EndTest(); }
|
|
|
| scoped_refptr<TestContextProvider> context_provider_;
|
| - size_t num_textures_without_readback_;
|
| - size_t num_textures_with_readback_;
|
| + int num_swaps_ = 0;
|
| + size_t num_textures_without_readback_ = 0;
|
| + size_t num_textures_with_readback_ = 0;
|
| gpu::SyncToken waited_sync_token_after_readback_;
|
| FakeContentLayerClient client_;
|
| scoped_refptr<FakePictureLayer> root_;
|
| @@ -931,19 +931,20 @@ class LayerTreeHostCopyRequestTestCreatesTexture
|
| EXPECT_TRUE(result->HasTexture());
|
|
|
| TextureMailbox mailbox;
|
| - std::unique_ptr<SingleReleaseCallback> release;
|
| - result->TakeTexture(&mailbox, &release);
|
| - EXPECT_TRUE(release);
|
| -
|
| - release->Run(gpu::SyncToken(), false);
|
| + result->TakeTexture(&mailbox, &release_);
|
| + EXPECT_TRUE(release_);
|
| }
|
|
|
| void AfterTest() override {
|
| + release_->Run(gpu::SyncToken(), false);
|
| +
|
| // No sync point was needed.
|
| EXPECT_FALSE(waited_sync_token_after_readback_.HasData());
|
| // Except the copy to have made another texture.
|
| EXPECT_EQ(num_textures_without_readback_ + 1, num_textures_with_readback_);
|
| }
|
| +
|
| + std::unique_ptr<SingleReleaseCallback> release_;
|
| };
|
|
|
| SINGLE_AND_MULTI_THREAD_DIRECT_RENDERER_TEST_F(
|
|
|