| Index: content/child/child_discardable_shared_memory_manager.cc
|
| diff --git a/content/child/child_discardable_shared_memory_manager.cc b/content/child/child_discardable_shared_memory_manager.cc
|
| index 14dfe97e7df975420594e4de8ed44e358451f88d..e7a12ab87f1e45351e7674c6d55e766d02b75d46 100644
|
| --- a/content/child/child_discardable_shared_memory_manager.cc
|
| +++ b/content/child/child_discardable_shared_memory_manager.cc
|
| @@ -71,17 +71,20 @@ class DiscardableMemoryImpl : public base::DiscardableMemory {
|
| DISALLOW_COPY_AND_ASSIGN(DiscardableMemoryImpl);
|
| };
|
|
|
| +void SendDeletedDiscardableSharedMemoryMessage(
|
| + scoped_refptr<ThreadSafeSender> sender,
|
| + DiscardableSharedMemoryId id) {
|
| + sender->Send(new ChildProcessHostMsg_DeletedDiscardableSharedMemory(id));
|
| +}
|
| +
|
| } // namespace
|
|
|
| ChildDiscardableSharedMemoryManager::ChildDiscardableSharedMemoryManager(
|
| ThreadSafeSender* sender)
|
| - : heap_(base::GetPageSize()), sender_(sender), weak_ptr_factory_(this) {
|
| + : heap_(base::GetPageSize()), sender_(sender) {
|
| }
|
|
|
| ChildDiscardableSharedMemoryManager::~ChildDiscardableSharedMemoryManager() {
|
| - // Cancel all DeletedDiscardableSharedMemory callbacks.
|
| - weak_ptr_factory_.InvalidateWeakPtrs();
|
| -
|
| // TODO(reveman): Determine if this DCHECK can be enabled. crbug.com/430533
|
| // DCHECK_EQ(heap_.GetSize(), heap_.GetSizeOfFreeLists());
|
| if (heap_.GetSize())
|
| @@ -167,9 +170,7 @@ ChildDiscardableSharedMemoryManager::AllocateLockedDiscardableMemory(
|
| // Create span for allocated memory.
|
| scoped_ptr<DiscardableSharedMemoryHeap::Span> new_span(heap_.Grow(
|
| shared_memory.Pass(), allocation_size_in_bytes,
|
| - base::Bind(
|
| - &ChildDiscardableSharedMemoryManager::DeletedDiscardableSharedMemory,
|
| - weak_ptr_factory_.GetWeakPtr(), new_id)));
|
| + base::Bind(&SendDeletedDiscardableSharedMemoryMessage, sender_, new_id)));
|
|
|
| // Unlock and insert any left over memory into free lists.
|
| if (pages < pages_to_allocate) {
|
| @@ -271,11 +272,6 @@ ChildDiscardableSharedMemoryManager::AllocateLockedDiscardableSharedMemory(
|
| return memory.Pass();
|
| }
|
|
|
| -void ChildDiscardableSharedMemoryManager::DeletedDiscardableSharedMemory(
|
| - DiscardableSharedMemoryId id) {
|
| - sender_->Send(new ChildProcessHostMsg_DeletedDiscardableSharedMemory(id));
|
| -}
|
| -
|
| void ChildDiscardableSharedMemoryManager::MemoryUsageChanged(
|
| size_t new_bytes_total,
|
| size_t new_bytes_free) const {
|
|
|