Index: content/child/child_shared_bitmap_manager.cc |
diff --git a/content/child/child_shared_bitmap_manager.cc b/content/child/child_shared_bitmap_manager.cc |
index 904dc45ed0f0b5e857143b0d8e6efcdf8866d200..41c22610c4ae237b0ae465cd57ea023a716f6f2a 100644 |
--- a/content/child/child_shared_bitmap_manager.cc |
+++ b/content/child/child_shared_bitmap_manager.cc |
@@ -10,9 +10,27 @@ |
namespace content { |
+namespace { |
+ |
+void FreeSharedMemory(scoped_refptr<ThreadSafeSender> sender, |
+ cc::SharedBitmap* bitmap) { |
+ TRACE_EVENT0("renderer", "ChildSharedBitmapManager::FreeSharedMemory"); |
+ sender->Send(new ChildProcessHostMsg_DeletedSharedBitmap(bitmap->id())); |
+ delete bitmap->memory(); |
+} |
+ |
+void ReleaseSharedBitmap(scoped_refptr<ThreadSafeSender> sender, |
+ cc::SharedBitmap* handle) { |
+ TRACE_EVENT0("renderer", "ChildSharedBitmapManager::ReleaseSharedBitmap"); |
+ sender->Send(new ChildProcessHostMsg_DeletedSharedBitmap(handle->id())); |
+} |
+ |
+} // namespace |
+ |
ChildSharedBitmapManager::ChildSharedBitmapManager( |
scoped_refptr<ThreadSafeSender> sender) |
- : sender_(sender) {} |
+ : sender_(sender) { |
+} |
ChildSharedBitmapManager::~ChildSharedBitmapManager() {} |
@@ -42,13 +60,8 @@ scoped_ptr<cc::SharedBitmap> ChildSharedBitmapManager::AllocateSharedBitmap( |
sender_->Send(new ChildProcessHostMsg_AllocatedSharedBitmap( |
memory_size, handle_to_send, id)); |
#endif |
- // The compositor owning the SharedBitmap will be closed before the |
- // ChildThread containng this, making the use of base::Unretained safe. |
return scoped_ptr<cc::SharedBitmap>(new cc::SharedBitmap( |
- memory.release(), |
- id, |
- base::Bind(&ChildSharedBitmapManager::FreeSharedMemory, |
- base::Unretained(this)))); |
+ memory.release(), id, base::Bind(&FreeSharedMemory, sender_))); |
} |
scoped_ptr<cc::SharedBitmap> ChildSharedBitmapManager::GetSharedBitmapFromId( |
@@ -70,22 +83,8 @@ scoped_ptr<cc::SharedBitmap> ChildSharedBitmapManager::GetBitmapForSharedMemory( |
mem->mapped_size(), handle_to_send, id)); |
// The compositor owning the SharedBitmap will be closed before the |
// ChildThread containng this, making the use of base::Unretained safe. |
- return scoped_ptr<cc::SharedBitmap>(new cc::SharedBitmap( |
- mem, |
- id, |
- base::Bind(&ChildSharedBitmapManager::ReleaseSharedBitmap, |
- base::Unretained(this)))); |
-} |
- |
-void ChildSharedBitmapManager::FreeSharedMemory(cc::SharedBitmap* bitmap) { |
- TRACE_EVENT0("renderer", "ChildSharedBitmapManager::FreeSharedMemory"); |
- sender_->Send(new ChildProcessHostMsg_DeletedSharedBitmap(bitmap->id())); |
- delete bitmap->memory(); |
-} |
- |
-void ChildSharedBitmapManager::ReleaseSharedBitmap(cc::SharedBitmap* handle) { |
- TRACE_EVENT0("renderer", "ChildSharedBitmapManager::ReleaseSharedBitmap"); |
- sender_->Send(new ChildProcessHostMsg_DeletedSharedBitmap(handle->id())); |
+ return scoped_ptr<cc::SharedBitmap>( |
+ new cc::SharedBitmap(mem, id, base::Bind(&ReleaseSharedBitmap, sender_))); |
} |
} // namespace content |