| Index: cc/resources/resource_pool.cc
|
| diff --git a/cc/resources/resource_pool.cc b/cc/resources/resource_pool.cc
|
| index e0e5af3703603e744775ab5e86afdf509a13198c..cdcaa4dbe47ad9d89c617f36eee7f5cbd3cb0ba5 100644
|
| --- a/cc/resources/resource_pool.cc
|
| +++ b/cc/resources/resource_pool.cc
|
| @@ -191,11 +191,14 @@
|
| delete resource;
|
| }
|
|
|
| -void ResourcePool::CheckBusyResources() {
|
| +void ResourcePool::CheckBusyResources(bool wait_if_needed) {
|
| ResourceList::iterator it = busy_resources_.begin();
|
|
|
| while (it != busy_resources_.end()) {
|
| ScopedResource* resource = it->resource;
|
| +
|
| + if (wait_if_needed)
|
| + resource_provider_->WaitReadLockIfNeeded(resource->id());
|
|
|
| if (resource_provider_->CanLockForWrite(resource->id())) {
|
| DidFinishUsingResource(resource, it->content_id);
|
|
|