Index: cc/trees/layer_tree_host_unittest.cc |
diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc |
index 1481b99550feb70749e4acee17f94a34ffad82d9..0afcd9fa7400356395a3d02104e3b234390fdedb 100644 |
--- a/cc/trees/layer_tree_host_unittest.cc |
+++ b/cc/trees/layer_tree_host_unittest.cc |
@@ -465,7 +465,7 @@ class LayerTreeHostFreeWorkerContextResourcesTest : public LayerTreeHostTest { |
explicit MockSetWorkerContextShouldAggressivelyFreeResourcesOutputSurface( |
bool delegated_rendering) |
: FakeOutputSurface(TestContextProvider::Create(), |
- TestContextProvider::Create(), |
+ TestContextProvider::CreateWorker(), |
delegated_rendering) {} |
MOCK_METHOD1(SetWorkerContextShouldAggressivelyFreeResources, |
void(bool is_visible)); |
@@ -6258,5 +6258,21 @@ class LayerTreeHostScrollingAndScalingUpdatesLayers : public LayerTreeHostTest { |
MULTI_THREAD_TEST_F(LayerTreeHostScrollingAndScalingUpdatesLayers); |
+class LayerTreeHostTestDestroyWhileInitializingOutputSurface |
+ : public LayerTreeHostTest { |
+ protected: |
+ void BeginTest() override { |
+ // By ending the test immediately we start initialization of an output |
+ // surface but destroy the LTH before it completes. This test verifies |
+ // that this works correctly and the output surface is destroyed on |
+ // the correct thread. |
+ EndTest(); |
+ } |
+ |
+ void AfterTest() override {} |
+}; |
+ |
+MULTI_THREAD_TEST_F(LayerTreeHostTestDestroyWhileInitializingOutputSurface); |
+ |
} // namespace |
} // namespace cc |