Index: cc/resources/pixel_buffer_raster_worker_pool.cc |
diff --git a/cc/resources/pixel_buffer_raster_worker_pool.cc b/cc/resources/pixel_buffer_raster_worker_pool.cc |
index 48e6f9a114b58e34743c5396e66b16b91602a081..ce8d9294fc160afbb9b21b5ef0690d01ed12cd75 100644 |
--- a/cc/resources/pixel_buffer_raster_worker_pool.cc |
+++ b/cc/resources/pixel_buffer_raster_worker_pool.cc |
@@ -41,13 +41,10 @@ class PixelBufferWorkerPoolTaskImpl : public internal::WorkerPoolTask { |
needs_upload_ = true; |
return; |
} |
- SkBitmap bitmap; |
- bitmap.setConfig(SkBitmap::kARGB_8888_Config, |
- task_->resource()->size().width(), |
- task_->resource()->size().height()); |
- bitmap.setPixels(buffer_); |
- SkBitmapDevice device(bitmap); |
- needs_upload_ = task_->RunOnWorkerThread(&device, thread_index); |
+ needs_upload_ = task_->RunOnWorkerThread(thread_index, |
+ buffer_, |
+ task_->resource()->size(), |
+ 0); |
} |
virtual void CompleteOnOriginThread() OVERRIDE { |
// |needs_upload_| must be be false if task didn't run. |
@@ -95,7 +92,8 @@ bool WasCanceled(const internal::RasterWorkerPoolTask* task) { |
PixelBufferRasterWorkerPool::PixelBufferRasterWorkerPool( |
ResourceProvider* resource_provider, |
size_t num_threads, |
- size_t max_transfer_buffer_usage_bytes) |
+ size_t max_transfer_buffer_usage_bytes, |
+ ResourceProvider::TextureFormat format) |
: RasterWorkerPool(resource_provider, num_threads), |
shutdown_(false), |
scheduled_raster_task_count_(0), |
@@ -105,7 +103,8 @@ PixelBufferRasterWorkerPool::PixelBufferRasterWorkerPool( |
check_for_completed_raster_tasks_pending_(false), |
should_notify_client_if_no_tasks_are_pending_(false), |
should_notify_client_if_no_tasks_required_for_activation_are_pending_( |
- false) { |
+ false), |
+ format_(format) { |
} |
PixelBufferRasterWorkerPool::~PixelBufferRasterWorkerPool() { |
@@ -226,8 +225,9 @@ void PixelBufferRasterWorkerPool::ScheduleTasks(RasterTask::Queue* queue) { |
"state", TracedValue::FromValue(StateAsValue().release())); |
} |
-GLenum PixelBufferRasterWorkerPool::GetResourceFormat() const { |
- return resource_provider()->best_texture_format(); |
+ResourceProvider::TextureFormat |
+ PixelBufferRasterWorkerPool::GetResourceFormat() const { |
+ return format_; |
} |
void PixelBufferRasterWorkerPool::CheckForCompletedTasks() { |