| Index: cc/resources/image_raster_worker_pool.cc
|
| diff --git a/cc/resources/image_raster_worker_pool.cc b/cc/resources/image_raster_worker_pool.cc
|
| index 45cd08f4102f984c5e69b86881e312f4e6c03149..860b4cca2469178d90ea77f65d593c4da5bdba82 100644
|
| --- a/cc/resources/image_raster_worker_pool.cc
|
| +++ b/cc/resources/image_raster_worker_pool.cc
|
| @@ -130,20 +130,21 @@ void ImageRasterWorkerPool::CheckForCompletedTasks() {
|
| CheckForCompletedGpuRasterTasks();
|
| }
|
|
|
| -void* ImageRasterWorkerPool::AcquireBufferForRaster(
|
| - internal::RasterWorkerPoolTask* task,
|
| - int* stride) {
|
| - // Acquire image for resource.
|
| - resource_provider()->AcquireImage(task->resource()->id());
|
| -
|
| - *stride = resource_provider()->GetImageStride(task->resource()->id());
|
| - return resource_provider()->MapImage(task->resource()->id());
|
| +SkCanvas* ImageRasterWorkerPool::AcquireCanvasForRaster(
|
| + internal::RasterWorkerPoolTask* task) {
|
| + if (task->use_gpu_rasterization())
|
| + return RasterWorkerPool::AcquireCanvasForRaster(task);
|
| + return resource_provider()->MapImageRasterBuffer(task->resource()->id());
|
| }
|
|
|
| void ImageRasterWorkerPool::OnRasterCompleted(
|
| internal::RasterWorkerPoolTask* task,
|
| const PicturePileImpl::Analysis& analysis) {
|
| - resource_provider()->UnmapImage(task->resource()->id());
|
| + if (task->use_gpu_rasterization()) {
|
| + RasterWorkerPool::OnRasterCompleted(task, analysis);
|
| + return;
|
| + }
|
| + resource_provider()->UnmapImageRasterBuffer(task->resource()->id());
|
| }
|
|
|
| void ImageRasterWorkerPool::OnImageDecodeCompleted(
|
|
|