| Index: content/browser/dom_storage/dom_storage_context_wrapper.cc
|
| diff --git a/content/browser/dom_storage/dom_storage_context_wrapper.cc b/content/browser/dom_storage/dom_storage_context_wrapper.cc
|
| index 96e2cee81d7cfa739884aba795f18909a534aef5..a3fe60f8480403bbfc461be0e39a0fdd8d39d797 100644
|
| --- a/content/browser/dom_storage/dom_storage_context_wrapper.cc
|
| +++ b/content/browser/dom_storage/dom_storage_context_wrapper.cc
|
| @@ -285,6 +285,9 @@ DOMStorageContextWrapper::DOMStorageContextWrapper(
|
| worker_pool->GetNamedSequenceToken("dom_storage_commit"),
|
| BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO)
|
| .get()));
|
| +
|
| + memory_pressure_listener_.reset(new base::MemoryPressureListener(
|
| + base::Bind(&DOMStorageContextWrapper::OnMemoryPressure, this)));
|
| }
|
|
|
| DOMStorageContextWrapper::~DOMStorageContextWrapper() {}
|
| @@ -359,6 +362,7 @@ void DOMStorageContextWrapper::SetForceKeepSessionState() {
|
| void DOMStorageContextWrapper::Shutdown() {
|
| DCHECK(context_.get());
|
| mojo_state_.reset();
|
| + memory_pressure_listener_.reset();
|
| context_->task_runner()->PostShutdownBlockingTask(
|
| FROM_HERE,
|
| DOMStorageTaskRunner::PRIMARY_SEQUENCE,
|
| @@ -380,4 +384,11 @@ void DOMStorageContextWrapper::OpenLocalStorage(
|
| origin, std::move(observer), std::move(request));
|
| }
|
|
|
| +void DOMStorageContextWrapper::OnMemoryPressure(
|
| + base::MemoryPressureListener::MemoryPressureLevel memory_pressure_level) {
|
| + context_->task_runner()->PostTask(
|
| + FROM_HERE, base::Bind(&DOMStorageContextImpl::OnMemoryPressure, context_,
|
| + memory_pressure_level));
|
| +}
|
| +
|
| } // namespace content
|
|
|