Chromium Code Reviews| Index: cc/resources/tile_manager.cc |
| diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc |
| index b96151e5cc037fe5e9370e96ceb8df3606fd56b3..654f84830ceb94a6139f7a17f4c83759dd3904b1 100644 |
| --- a/cc/resources/tile_manager.cc |
| +++ b/cc/resources/tile_manager.cc |
| @@ -17,6 +17,7 @@ |
| #include "cc/debug/frame_viewer_instrumentation.h" |
| #include "cc/debug/traced_value.h" |
| #include "cc/layers/picture_layer_impl.h" |
| +#include "cc/resources/raster_buffer.h" |
| #include "cc/resources/rasterizer.h" |
| #include "cc/resources/tile.h" |
| #include "skia/ext/paint_simplifier.h" |
| @@ -58,8 +59,7 @@ class RasterTaskImpl : public RasterTask { |
| source_frame_number_(source_frame_number), |
| analyze_picture_(analyze_picture), |
| rendering_stats_(rendering_stats), |
| - reply_(reply), |
| - raster_buffer_(NULL) {} |
| + reply_(reply) {} |
| // Overridden from Task: |
| virtual void RunOnWorkerThread() OVERRIDE { |
| @@ -80,11 +80,10 @@ class RasterTaskImpl : public RasterTask { |
| // Overridden from RasterizerTask: |
| virtual void ScheduleOnOriginThread(RasterizerTaskClient* client) OVERRIDE { |
| DCHECK(!raster_buffer_); |
| - raster_buffer_ = client->AcquireBufferForRaster(this); |
| + raster_buffer_ = client->AcquireBufferForRaster(resource()); |
| } |
| virtual void CompleteOnOriginThread(RasterizerTaskClient* client) OVERRIDE { |
| - raster_buffer_ = NULL; |
| - client->ReleaseBufferForRaster(this); |
| + client->ReleaseBufferForRaster(raster_buffer_.Pass()); |
| } |
| virtual void RunReplyOnOriginThread() OVERRIDE { |
| DCHECK(!raster_buffer_); |
| @@ -123,9 +122,7 @@ class RasterTaskImpl : public RasterTask { |
| devtools_instrumentation::kRasterTask, layer_id_); |
| skia::RefPtr<SkCanvas> canvas = raster_buffer_->AcquireSkCanvas(); |
| - if (!canvas) |
| - return; |
| - canvas->save(); |
| + DCHECK(canvas); |
|
vmpstr
2014/09/16 22:15:55
Oh I see the change now from NULL ptr to NullCanva
reveman
2014/09/17 14:40:56
Good idea. Making this change using https://codere
|
| skia::RefPtr<SkDrawFilter> draw_filter; |
| switch (raster_mode_) { |
| @@ -164,7 +161,6 @@ class RasterTaskImpl : public RasterTask { |
| 100); |
| } |
| - canvas->restore(); |
| raster_buffer_->ReleaseSkCanvas(canvas); |
| } |
| @@ -180,7 +176,7 @@ class RasterTaskImpl : public RasterTask { |
| bool analyze_picture_; |
| RenderingStatsInstrumentation* rendering_stats_; |
| const base::Callback<void(const PicturePileImpl::Analysis&, bool)> reply_; |
| - RasterBuffer* raster_buffer_; |
| + scoped_ptr<RasterBuffer> raster_buffer_; |
| DISALLOW_COPY_AND_ASSIGN(RasterTaskImpl); |
| }; |