Chromium Code Reviews| Index: base/memory/discardable_memory_linux.cc |
| diff --git a/base/memory/discardable_memory_linux.cc b/base/memory/discardable_memory_linux.cc |
| index 92e39e5e7d421f3f7acd67ae39b7c9e95b060cd2..d0664bf3821118ee36e2cad36ddf584767b6a961 100644 |
| --- a/base/memory/discardable_memory_linux.cc |
| +++ b/base/memory/discardable_memory_linux.cc |
| @@ -2,24 +2,37 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
|
willchan no longer on Chromium
2013/12/24 01:21:06
The first thing to include here should be discarda
reveman
2013/12/26 11:46:08
Done.
|
| +#include "base/logging.h" |
| #include "base/memory/discardable_memory_emulated.h" |
| namespace base { |
| // static |
| -bool DiscardableMemory::SupportedNatively() { |
| - return false; |
| +void DiscardableMemory::GetSupportedTypes( |
| + std::vector<DiscardableMemoryType>* types) { |
|
willchan no longer on Chromium
2013/12/24 01:21:06
I think you should clear |types| everywhere first,
reveman
2013/12/26 11:46:08
Done. By using assign() instead of push_back().
|
| + types->push_back(DISCARDABLE_MEMORY_TYPE_EMULATED); |
| } |
| // static |
| scoped_ptr<DiscardableMemory> DiscardableMemory::CreateLockedMemory( |
| size_t size) { |
| - scoped_ptr<internal::DiscardableMemoryEmulated> memory( |
| - new internal::DiscardableMemoryEmulated(size)); |
| - if (!memory->Initialize()) |
| - return scoped_ptr<DiscardableMemory>(); |
| - |
| - return memory.PassAs<DiscardableMemory>(); |
| + switch (GetType()) { |
| + case DISCARDABLE_MEMORY_TYPE_NONE: |
| + case DISCARDABLE_MEMORY_TYPE_ANDROID: |
| + case DISCARDABLE_MEMORY_TYPE_MAC: |
| + return scoped_ptr<DiscardableMemory>(); |
| + case DISCARDABLE_MEMORY_TYPE_EMULATED: { |
| + scoped_ptr<internal::DiscardableMemoryEmulated> memory( |
| + new internal::DiscardableMemoryEmulated(size)); |
| + if (!memory->Initialize()) |
| + return scoped_ptr<DiscardableMemory>(); |
| + |
| + return memory.PassAs<DiscardableMemory>(); |
| + } |
| + } |
| + |
| + NOTREACHED(); |
| + return scoped_ptr<DiscardableMemory>(); |
| } |
| // static |