Index: cc/resources/resource_pool.cc |
diff --git a/cc/resources/resource_pool.cc b/cc/resources/resource_pool.cc |
index f5c71678f2740a5966f41958c08a0bf49f77ae70..4cb8e3d60d2e19b42c15cca572f3c61a6a5537bb 100644 |
--- a/cc/resources/resource_pool.cc |
+++ b/cc/resources/resource_pool.cc |
@@ -9,6 +9,16 @@ |
namespace cc { |
+ResourcePool::ResourcePool(ResourceProvider* resource_provider) |
+ : resource_provider_(resource_provider), |
+ target_(0), |
+ max_memory_usage_bytes_(0), |
+ max_unused_memory_usage_bytes_(0), |
+ max_resource_count_(0), |
+ memory_usage_bytes_(0), |
+ unused_memory_usage_bytes_(0), |
+ resource_count_(0) {} |
+ |
ResourcePool::ResourcePool(ResourceProvider* resource_provider, GLenum target) |
: resource_provider_(resource_provider), |
target_(target), |
@@ -17,7 +27,9 @@ ResourcePool::ResourcePool(ResourceProvider* resource_provider, GLenum target) |
max_resource_count_(0), |
memory_usage_bytes_(0), |
unused_memory_usage_bytes_(0), |
- resource_count_(0) {} |
+ resource_count_(0) { |
+ DCHECK_NE(0u, target); |
+} |
ResourcePool::~ResourcePool() { |
while (!busy_resources_.empty()) { |
@@ -54,7 +66,9 @@ scoped_ptr<ScopedResource> ResourcePool::AcquireResource( |
scoped_ptr<ScopedResource> resource = |
ScopedResource::Create(resource_provider_); |
- resource->AllocateManaged(size, target_, format); |
+ GLenum target = |
+ target_ ? target_ : resource_provider_->GetImageTextureTarget(format); |
+ resource->AllocateManaged(size, target, format); |
DCHECK(Resource::VerifySizeInBytes(resource->size(), resource->format())); |
memory_usage_bytes_ += |