Chromium Code Reviews| Index: cc/resources/zero_copy_tile_task_worker_pool.cc |
| diff --git a/cc/resources/zero_copy_tile_task_worker_pool.cc b/cc/resources/zero_copy_tile_task_worker_pool.cc |
| index 8b80aa3292207d48f52c5033bb2b121fec3b9441..4529ad648e426aed53ae9bee59e971915c3c95f0 100644 |
| --- a/cc/resources/zero_copy_tile_task_worker_pool.cc |
| +++ b/cc/resources/zero_copy_tile_task_worker_pool.cc |
| @@ -31,9 +31,20 @@ class RasterBufferImpl : public RasterBuffer { |
| if (!gpu_memory_buffer) |
| return; |
| - TileTaskWorkerPool::PlaybackToMemory( |
| - gpu_memory_buffer->Map(), resource_->format(), resource_->size(), |
| - gpu_memory_buffer->GetStride(), raster_source, rect, scale); |
| + size_t num_buffers = gpu_memory_buffer->GetNumberOfPlanes(); |
|
reveman
2015/03/23 22:24:00
Same here. No need to support multi-plane formats.
reveman
2015/03/23 22:24:01
Same here. This code can assume one plane.
emircan
2015/03/24 16:52:26
Done.
|
| + DCHECK_EQ(num_buffers, 1u); |
| + |
| + void* mapped_buffers[num_buffers]; |
| + bool map_completed = gpu_memory_buffer->Map(mapped_buffers); |
| + DCHECK(map_completed); |
| + |
| + uint32 strides[num_buffers]; |
| + bool getStride_completed = gpu_memory_buffer->GetStride(strides); |
| + DCHECK(getStride_completed); |
| + |
| + TileTaskWorkerPool::PlaybackToMemory(mapped_buffers[0], resource_->format(), |
| + resource_->size(), strides[0], |
| + raster_source, rect, scale); |
| gpu_memory_buffer->Unmap(); |
| } |