diff options
author | jbauman <jbauman@chromium.org> | 2015-04-17 19:22:07 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-18 02:22:28 +0000 |
commit | 7d1228f6466c56bd6fe751b86419df256937d5a0 (patch) | |
tree | 216ade3aee04725c8beed07906a66daba95c73e5 /cc | |
parent | 09b70b872a2ac5219de146e54d5614fde585569c (diff) | |
download | chromium_src-7d1228f6466c56bd6fe751b86419df256937d5a0.zip chromium_src-7d1228f6466c56bd6fe751b86419df256937d5a0.tar.gz chromium_src-7d1228f6466c56bd6fe751b86419df256937d5a0.tar.bz2 |
Pass ResourceIdSet into ResourceProvider::DeclareUsedResourceFromChild.
Avoid constructing a temporary resource id set (in parent id space) by having the caller construct one (in child id space). Also get rid of Child::in_use_resources, as it's only used for DCHECKs. Also, switch ResourceIdSet to use base::hash_set, as that seems to have better performance.
This improves performance on SurfaceAggregatorPerfTest.ManySurfacesTransparent by around 15 percent on x86.
BUG=449319
Review URL: https://codereview.chromium.org/1084333002
Cr-Commit-Position: refs/heads/master@{#325763}
Diffstat (limited to 'cc')
-rw-r--r-- | cc/layers/delegated_renderer_layer_impl.cc | 7 | ||||
-rw-r--r-- | cc/layers/delegated_renderer_layer_impl.h | 4 | ||||
-rw-r--r-- | cc/resources/resource_provider.cc | 18 | ||||
-rw-r--r-- | cc/resources/resource_provider.h | 8 | ||||
-rw-r--r-- | cc/resources/resource_provider_unittest.cc | 104 | ||||
-rw-r--r-- | cc/surfaces/surface_aggregator.cc | 7 | ||||
-rw-r--r-- | cc/test/fake_delegated_renderer_layer_impl.cc | 7 |
7 files changed, 88 insertions, 67 deletions
diff --git a/cc/layers/delegated_renderer_layer_impl.cc b/cc/layers/delegated_renderer_layer_impl.cc index 98dcd44..98ac103 100644 --- a/cc/layers/delegated_renderer_layer_impl.cc +++ b/cc/layers/delegated_renderer_layer_impl.cc @@ -47,9 +47,8 @@ bool DelegatedRendererLayerImpl::HasContributingDelegatedRenderPasses() const { static ResourceProvider::ResourceId ResourceRemapHelper( bool* invalid_frame, const ResourceProvider::ResourceIdMap& child_to_parent_map, - ResourceProvider::ResourceIdArray* resources_in_frame, + ResourceProvider::ResourceIdSet* resources_in_frame, ResourceProvider::ResourceId id) { - ResourceProvider::ResourceIdMap::const_iterator it = child_to_parent_map.find(id); if (it == child_to_parent_map.end()) { @@ -59,7 +58,7 @@ static ResourceProvider::ResourceId ResourceRemapHelper( DCHECK_EQ(it->first, id); ResourceProvider::ResourceId remapped_id = it->second; - resources_in_frame->push_back(id); + resources_in_frame->insert(id); return remapped_id; } @@ -119,7 +118,7 @@ void DelegatedRendererLayerImpl::SetFrameData( RenderPass::CopyAll(frame_data->render_pass_list, &render_pass_list); bool invalid_frame = false; - ResourceProvider::ResourceIdArray resources_in_frame; + ResourceProvider::ResourceIdSet resources_in_frame; DrawQuad::ResourceIteratorCallback remap_resources_to_parent_callback = base::Bind(&ResourceRemapHelper, &invalid_frame, diff --git a/cc/layers/delegated_renderer_layer_impl.h b/cc/layers/delegated_renderer_layer_impl.h index 4a61ba1..d59ccc2 100644 --- a/cc/layers/delegated_renderer_layer_impl.h +++ b/cc/layers/delegated_renderer_layer_impl.h @@ -58,7 +58,7 @@ class CC_EXPORT DelegatedRendererLayerImpl : public LayerImpl { const RenderPassList& RenderPassesInDrawOrderForTesting() const { return render_passes_in_draw_order_; } - const ResourceProvider::ResourceIdArray& ResourcesForTesting() const { + const ResourceProvider::ResourceIdSet& ResourcesForTesting() const { return resources_; } @@ -86,7 +86,7 @@ class CC_EXPORT DelegatedRendererLayerImpl : public LayerImpl { float inverse_device_scale_factor_; RenderPassList render_passes_in_draw_order_; base::hash_map<RenderPassId, int> render_passes_index_by_id_; - ResourceProvider::ResourceIdArray resources_; + ResourceProvider::ResourceIdSet resources_; int child_id_; bool own_child_id_; diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc index 9bbf679..7987f81 100644 --- a/cc/resources/resource_provider.cc +++ b/cc/resources/resource_provider.cc @@ -1301,8 +1301,6 @@ void ResourceProvider::DestroyChildInternal(ChildMap::iterator it, resources_for_child.push_back(id); } - // If the child is going away, don't consider any resources in use. - child.in_use_resources.clear(); child.marked_for_deletion = true; DeleteAndReturnUnusedResourcesToChild(it, style, resources_for_child); @@ -1401,31 +1399,20 @@ void ResourceProvider::ReceiveFromChild( void ResourceProvider::DeclareUsedResourcesFromChild( int child, - const ResourceIdArray& resources_from_child) { + const ResourceIdSet& resources_from_child) { DCHECK(thread_checker_.CalledOnValidThread()); ChildMap::iterator child_it = children_.find(child); DCHECK(child_it != children_.end()); Child& child_info = child_it->second; DCHECK(!child_info.marked_for_deletion); - child_info.in_use_resources.clear(); - - for (size_t i = 0; i < resources_from_child.size(); ++i) { - ResourceIdMap::iterator it = - child_info.child_to_parent_map.find(resources_from_child[i]); - DCHECK(it != child_info.child_to_parent_map.end()); - - ResourceId local_id = it->second; - DCHECK(!GetResource(local_id)->marked_for_deletion); - child_info.in_use_resources.insert(local_id); - } ResourceIdArray unused; for (ResourceIdMap::iterator it = child_info.child_to_parent_map.begin(); it != child_info.child_to_parent_map.end(); ++it) { ResourceId local_id = it->second; - bool resource_is_in_use = child_info.in_use_resources.count(local_id) > 0; + bool resource_is_in_use = resources_from_child.count(it->first) > 0; if (!resource_is_in_use) unused.push_back(local_id); } @@ -1569,7 +1556,6 @@ void ResourceProvider::DeleteAndReturnUnusedResourcesToChild( Resource& resource = it->second; DCHECK(!resource.locked_for_write); - DCHECK_EQ(0u, child_info->in_use_resources.count(local_id)); DCHECK(child_info->parent_to_child_map.count(local_id)); ResourceId child_id = child_info->parent_to_child_map[local_id]; diff --git a/cc/resources/resource_provider.h b/cc/resources/resource_provider.h index 3f86d36..70b7fc7 100644 --- a/cc/resources/resource_provider.h +++ b/cc/resources/resource_provider.h @@ -64,7 +64,7 @@ class CC_EXPORT ResourceProvider { public: typedef unsigned ResourceId; typedef std::vector<ResourceId> ResourceIdArray; - typedef std::set<ResourceId> ResourceIdSet; + typedef base::hash_set<ResourceId> ResourceIdSet; typedef base::hash_map<ResourceId, ResourceId> ResourceIdMap; enum TextureHint { TEXTURE_HINT_DEFAULT = 0x0, @@ -203,9 +203,8 @@ class CC_EXPORT ResourceProvider { // Once a set of resources have been received, they may or may not be used. // This declares what set of resources are currently in use from the child, // releasing any other resources back to the child. - void DeclareUsedResourcesFromChild( - int child, - const ResourceIdArray& resources_from_child); + void DeclareUsedResourcesFromChild(int child, + const ResourceIdSet& resources_from_child); // Receives resources from the parent, moving them from mailboxes. Resource // IDs passed are in the child namespace. @@ -514,7 +513,6 @@ class CC_EXPORT ResourceProvider { ResourceIdMap child_to_parent_map; ResourceIdMap parent_to_child_map; ReturnCallback return_callback; - ResourceIdSet in_use_resources; bool marked_for_deletion; bool needs_sync_points; }; diff --git a/cc/resources/resource_provider_unittest.cc b/cc/resources/resource_provider_unittest.cc index 7ebc0e3..6cebc56 100644 --- a/cc/resources/resource_provider_unittest.cc +++ b/cc/resources/resource_provider_unittest.cc @@ -725,8 +725,13 @@ TEST_P(ResourceProviderTest, TransferGLResources) { } EXPECT_EQ(list[0].mailbox_holder.sync_point, context3d_->last_waited_sync_point()); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); + resource_ids_to_receive.insert(id3); + resource_ids_to_receive.insert(id4); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } EXPECT_EQ(4u, resource_provider_->num_resources()); @@ -788,7 +793,7 @@ TEST_P(ResourceProviderTest, TransferGLResources) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); ASSERT_EQ(4u, returned_to_child.size()); @@ -865,8 +870,13 @@ TEST_P(ResourceProviderTest, TransferGLResources) { EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id3)); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id4)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); + resource_ids_to_receive.insert(id3); + resource_ids_to_receive.insert(id4); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } EXPECT_EQ(0u, returned_to_child.size()); @@ -949,8 +959,12 @@ TEST_P(ResourceProviderTestNoSyncPoint, TransferGLResources) { EXPECT_EQ(external_sync_point, list[2].mailbox_holder.sync_point); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); + resource_ids_to_receive.insert(id3); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } { @@ -958,7 +972,7 @@ TEST_P(ResourceProviderTestNoSyncPoint, TransferGLResources) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); ASSERT_EQ(3u, returned_to_child.size()); @@ -1021,7 +1035,7 @@ TEST_P(ResourceProviderTest, ReadLockCountStopsReturnToChildOrDelete) { list[0].id); resource_provider_->DeclareUsedResourcesFromChild( - child_id, ResourceProvider::ResourceIdArray()); + child_id, ResourceProvider::ResourceIdSet()); EXPECT_EQ(0u, returned_to_child.size()); } @@ -1080,7 +1094,7 @@ TEST_P(ResourceProviderTest, AllowOverlayTransfersToParent) { EXPECT_FALSE(resource_provider_->AllowOverlay(list[1].id)); resource_provider_->DeclareUsedResourcesFromChild( - child_id, ResourceProvider::ResourceIdArray()); + child_id, ResourceProvider::ResourceIdSet()); EXPECT_EQ(2u, returned_to_child.size()); child_resource_provider_->ReceiveReturnsFromParent(returned_to_child); @@ -1140,8 +1154,12 @@ TEST_P(ResourceProviderTest, TransferSoftwareResources) { EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id2)); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id3)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); + resource_ids_to_receive.insert(id3); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } EXPECT_EQ(3u, resource_provider_->num_resources()); @@ -1191,7 +1209,7 @@ TEST_P(ResourceProviderTest, TransferSoftwareResources) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); ASSERT_EQ(3u, returned_to_child.size()); @@ -1249,8 +1267,12 @@ TEST_P(ResourceProviderTest, TransferSoftwareResources) { EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id2)); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id3)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); + resource_ids_to_receive.insert(id3); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } EXPECT_EQ(0u, returned_to_child.size()); @@ -1424,8 +1446,11 @@ TEST_P(ResourceProviderTest, DeleteExportedResources) { EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id1)); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id2)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } EXPECT_EQ(2u, resource_provider_->num_resources()); @@ -1456,7 +1481,7 @@ TEST_P(ResourceProviderTest, DeleteExportedResources) { // Release the resource in the parent. Set no resources as being in use. The // resources are exported so that can't be transferred back yet. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); EXPECT_EQ(0u, returned_to_child.size()); @@ -1517,8 +1542,11 @@ TEST_P(ResourceProviderTest, DestroyChildWithExportedResources) { EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id1)); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id2)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id1); + resource_ids_to_receive.insert(id2); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } EXPECT_EQ(2u, resource_provider_->num_resources()); @@ -1549,7 +1577,7 @@ TEST_P(ResourceProviderTest, DestroyChildWithExportedResources) { // Release the resource in the parent. Set no resources as being in use. The // resources are exported so that can't be transferred back yet. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); // Destroy the child, the resources should not be returned yet. @@ -1618,8 +1646,10 @@ TEST_P(ResourceProviderTest, DeleteTransferredResources) { EXPECT_NE(0u, list[0].mailbox_holder.sync_point); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } // Delete textures in the child, while they are transfered. @@ -1630,7 +1660,7 @@ TEST_P(ResourceProviderTest, DeleteTransferredResources) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); ASSERT_EQ(1u, returned_to_child.size()); @@ -1666,8 +1696,10 @@ TEST_P(ResourceProviderTest, UnuseTransferredResources) { &list); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } TransferableResourceArray sent_to_top_level; { @@ -1682,7 +1714,7 @@ TEST_P(ResourceProviderTest, UnuseTransferredResources) { } { // Stop using resource. - ResourceProvider::ResourceIdArray empty; + ResourceProvider::ResourceIdSet empty; resource_provider_->DeclareUsedResourcesFromChild(child_id, empty); // Resource is not yet returned to the child, since it's in use by the // top-level. @@ -1697,8 +1729,10 @@ TEST_P(ResourceProviderTest, UnuseTransferredResources) { &list); EXPECT_TRUE(child_resource_provider_->InUseByConsumer(id)); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } { // Receive returns back from top-level. @@ -1737,7 +1771,7 @@ TEST_P(ResourceProviderTest, UnuseTransferredResources) { } { // Stop using resource. - ResourceProvider::ResourceIdArray empty; + ResourceProvider::ResourceIdSet empty; resource_provider_->DeclareUsedResourcesFromChild(child_id, empty); // Resource should have been returned to the child, since it's no longer in // use by the top-level. @@ -1873,8 +1907,10 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest { } Mock::VerifyAndClearExpectations(parent_context); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(id); parent_resource_provider->DeclareUsedResourcesFromChild( - child_id, resource_ids_to_transfer); + child_id, resource_ids_to_receive); Mock::VerifyAndClearExpectations(parent_context); } ResourceProvider::ResourceIdMap resource_map = @@ -1908,7 +1944,7 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest { // Transfer resources back from the parent to the child. Set no resources // as being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; EXPECT_CALL(*parent_context, insertSyncPoint()); parent_resource_provider->DeclareUsedResourcesFromChild(child_id, no_resources); @@ -2093,8 +2129,10 @@ TEST_P(ResourceProviderTest, LostResourceInParent) { EXPECT_EQ(1u, list.size()); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(resource); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } // Lose the output surface in the parent. @@ -2105,7 +2143,7 @@ TEST_P(ResourceProviderTest, LostResourceInParent) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); // Expect a GL resource to be lost. @@ -2145,8 +2183,10 @@ TEST_P(ResourceProviderTest, LostResourceInGrandParent) { EXPECT_EQ(1u, list.size()); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(resource); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } { @@ -2183,7 +2223,7 @@ TEST_P(ResourceProviderTest, LostResourceInGrandParent) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); // Expect the resource to be lost. @@ -2221,8 +2261,10 @@ TEST_P(ResourceProviderTest, LostMailboxInParent) { EXPECT_EQ(1u, list.size()); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(resource); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } // Lose the output surface in the parent. @@ -2233,7 +2275,7 @@ TEST_P(ResourceProviderTest, LostMailboxInParent) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); ASSERT_EQ(1u, returned_to_child.size()); @@ -2272,8 +2314,10 @@ TEST_P(ResourceProviderTest, LostMailboxInGrandParent) { EXPECT_EQ(1u, list.size()); resource_provider_->ReceiveFromChild(child_id, list); + ResourceProvider::ResourceIdSet resource_ids_to_receive; + resource_ids_to_receive.insert(resource); resource_provider_->DeclareUsedResourcesFromChild(child_id, - resource_ids_to_transfer); + resource_ids_to_receive); } { @@ -2304,7 +2348,7 @@ TEST_P(ResourceProviderTest, LostMailboxInGrandParent) { // Transfer resources back from the parent to the child. Set no resources as // being in use. - ResourceProvider::ResourceIdArray no_resources; + ResourceProvider::ResourceIdSet no_resources; resource_provider_->DeclareUsedResourcesFromChild(child_id, no_resources); // Expect the resource to be lost. diff --git a/cc/surfaces/surface_aggregator.cc b/cc/surfaces/surface_aggregator.cc index dd4a13b..627bc14 100644 --- a/cc/surfaces/surface_aggregator.cc +++ b/cc/surfaces/surface_aggregator.cc @@ -146,7 +146,7 @@ static ResourceProvider::ResourceId ResourceRemapHelper( static ResourceProvider::ResourceId ValidateResourceHelper( bool* invalid_frame, const ResourceProvider::ResourceIdMap& child_to_parent_map, - ResourceProvider::ResourceIdArray* resources_in_frame, + ResourceProvider::ResourceIdSet* resources_in_frame, ResourceProvider::ResourceId id) { ResourceProvider::ResourceIdMap::const_iterator it = child_to_parent_map.find(id); @@ -154,7 +154,7 @@ static ResourceProvider::ResourceId ValidateResourceHelper( *invalid_frame = true; return id; } - resources_in_frame->push_back(id); + resources_in_frame->insert(id); return id; } @@ -169,8 +169,7 @@ bool SurfaceAggregator::ValidateResources( surface->factory()->RefResources(frame_data->resource_list); provider_->ReceiveFromChild(child_id, frame_data->resource_list); - typedef ResourceProvider::ResourceIdArray IdArray; - IdArray referenced_resources; + ResourceProvider::ResourceIdSet referenced_resources; bool invalid_frame = false; DrawQuad::ResourceIteratorCallback remap = diff --git a/cc/test/fake_delegated_renderer_layer_impl.cc b/cc/test/fake_delegated_renderer_layer_impl.cc index 28db1e4..1154a0e 100644 --- a/cc/test/fake_delegated_renderer_layer_impl.cc +++ b/cc/test/fake_delegated_renderer_layer_impl.cc @@ -39,12 +39,7 @@ static ResourceProvider::ResourceId AddResourceToFrame( ResourceProvider::ResourceIdSet FakeDelegatedRendererLayerImpl::Resources() const { - ResourceProvider::ResourceIdSet set; - ResourceProvider::ResourceIdArray array; - array = ResourcesForTesting(); - for (size_t i = 0; i < array.size(); ++i) - set.insert(array[i]); - return set; + return ResourcesForTesting(); } void NoopReturnCallback(const ReturnedResourceArray& returned, |