Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4832)

Unified Diff: cc/resources/raster_worker_pool.cc

Issue 27066005: cc: Ref count pixel ref in image decode task. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/raster_worker_pool.cc
diff --git a/cc/resources/raster_worker_pool.cc b/cc/resources/raster_worker_pool.cc
index b7dd504abc85d749709f927130085b8d7025e16d..d4ad90a812244438f107ac9763b33592ee6771a2 100644
--- a/cc/resources/raster_worker_pool.cc
+++ b/cc/resources/raster_worker_pool.cc
@@ -256,7 +256,7 @@ class ImageDecodeWorkerPoolTaskImpl : public internal::WorkerPoolTask {
int layer_id,
RenderingStatsInstrumentation* rendering_stats,
const RasterWorkerPool::Task::Reply& reply)
- : pixel_ref_(pixel_ref),
+ : pixel_ref_(skia::SharePtr(pixel_ref)),
layer_id_(layer_id),
rendering_stats_(rendering_stats),
reply_(reply) {}
@@ -265,7 +265,7 @@ class ImageDecodeWorkerPoolTaskImpl : public internal::WorkerPoolTask {
virtual void RunOnWorkerThread(unsigned thread_index) OVERRIDE {
TRACE_EVENT0("cc", "ImageDecodeWorkerPoolTaskImpl::RunOnWorkerThread");
devtools_instrumentation::ScopedImageDecodeTask image_decode_task(
- pixel_ref_);
+ pixel_ref_.get());
pixel_ref_->Decode();
}
virtual void CompleteOnOriginThread() OVERRIDE {
@@ -276,7 +276,7 @@ class ImageDecodeWorkerPoolTaskImpl : public internal::WorkerPoolTask {
virtual ~ImageDecodeWorkerPoolTaskImpl() {}
private:
- skia::LazyPixelRef* pixel_ref_;
+ skia::RefPtr<skia::LazyPixelRef> pixel_ref_;
int layer_id_;
RenderingStatsInstrumentation* rendering_stats_;
const RasterWorkerPool::Task::Reply reply_;
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698