Index: cc/raster/gpu_tile_task_worker_pool.cc |
diff --git a/cc/raster/gpu_tile_task_worker_pool.cc b/cc/raster/gpu_tile_task_worker_pool.cc |
index 3de7118a05d16889b3d295a3f3b1f1af6c03a9d1..e2891e1b5a881b0d42b6eb7e33e7966b4396b029 100644 |
--- a/cc/raster/gpu_tile_task_worker_pool.cc |
+++ b/cc/raster/gpu_tile_task_worker_pool.cc |
@@ -208,7 +208,17 @@ void GpuTileTaskWorkerPool::CheckForCompletedTasks() { |
} |
ResourceFormat GpuTileTaskWorkerPool::GetResourceFormat() { |
- return rasterizer_->resource_provider()->best_texture_format(); |
+ ResourceFormat format = |
vmiura
2015/06/09 23:05:11
We call this per-tile. I think it'd be good to pr
|
+ rasterizer_->resource_provider()->best_texture_format(); |
+ if (rasterizer_->msaa_sample_count()) { |
+ const ContextProvider::Capabilities& caps = rasterizer_->resource_provider() |
+ ->output_surface() |
+ ->context_provider() |
+ ->ContextCapabilities(); |
+ if (!caps.gpu.render_buffer_format_bgra8888) |
+ return ResourceFormat::RGBA_8888; |
+ } |
+ return format; |
} |
void GpuTileTaskWorkerPool::CompleteTasks(const Task::Vector& tasks) { |