| Index: cc/output/software_renderer.cc
|
| diff --git a/cc/output/software_renderer.cc b/cc/output/software_renderer.cc
|
| index 69c3b7e8bb50ec8e869c6d0b51a388cb5fd7d679..d05801e7f2af1849d93734fc7d5bb696c9279c20 100644
|
| --- a/cc/output/software_renderer.cc
|
| +++ b/cc/output/software_renderer.cc
|
| @@ -407,13 +407,18 @@ void SoftwareRenderer::DrawUnsupportedQuad(const DrawingFrame* frame,
|
| current_paint_);
|
| }
|
|
|
| -void SoftwareRenderer::CopyCurrentRenderPassToBitmap(DrawingFrame* frame,
|
| - SkBitmap* bitmap) {
|
| +void SoftwareRenderer::CopyCurrentRenderPassToBitmap(
|
| + DrawingFrame* frame,
|
| + const CopyRenderPassCallback& callback) {
|
| gfx::Size render_pass_size = frame->current_render_pass->output_rect.size();
|
| +
|
| + scoped_ptr<SkBitmap> bitmap(new SkBitmap);
|
| bitmap->setConfig(SkBitmap::kARGB_8888_Config,
|
| render_pass_size.width(),
|
| render_pass_size.height());
|
| - current_canvas_->readPixels(bitmap, 0, 0);
|
| + current_canvas_->readPixels(bitmap.get(), 0, 0);
|
| +
|
| + callback.Run(bitmap.Pass());
|
| }
|
|
|
| void SoftwareRenderer::GetFramebufferPixels(void* pixels, gfx::Rect rect) {
|
|
|