Commit 6a414f77 authored by Benoit Lize's avatar Benoit Lize Committed by Chromium LUCI CQ

[discardable] Don't use weak pointers.

The scheduled purge task now retains the manager, but will not
reschedule itself, ensuring that it will be destroyed.

Bug: 1131857
Change-Id: Ifbb20e0c51902c8104630e35da6b025da1869639
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2586346Reviewed-by: default avatarPeng Huang <penghuang@chromium.org>
Commit-Queue: Benoit L <lizeb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#836130}
parent a2697205
......@@ -257,7 +257,7 @@ ClientDiscardableSharedMemoryManager::AllocateLockedDiscardableMemory(
task_runner_->PostDelayedTask(
FROM_HERE,
base::BindOnce(&ClientDiscardableSharedMemoryManager::ScheduledPurge,
weak_factory_.GetWeakPtr()),
this),
kScheduledPurgeInterval);
is_purge_scheduled_ = true;
}
......@@ -444,7 +444,7 @@ void ClientDiscardableSharedMemoryManager::ScheduledPurge() {
task_runner_->PostDelayedTask(
FROM_HERE,
base::BindOnce(&ClientDiscardableSharedMemoryManager::ScheduledPurge,
weak_factory_.GetWeakPtr()),
this),
kScheduledPurgeInterval);
}
}
......
......@@ -203,9 +203,6 @@ class DISCARDABLE_MEMORY_EXPORT ClientDiscardableSharedMemoryManager
const bool may_schedule_periodic_purge_;
THREAD_CHECKER(thread_checker_);
base::WeakPtrFactory<ClientDiscardableSharedMemoryManager> weak_factory_{
this};
DISALLOW_COPY_AND_ASSIGN(ClientDiscardableSharedMemoryManager);
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment