Index: base/memory/discardable_memory_emulated.h |
diff --git a/base/memory/discardable_memory_emulated.h b/base/memory/discardable_memory_emulated.h |
index 20144ff25f016a50c5810892f3be265b542fc165..35ce08e286392fe06c1cb1f45a2a640e1269c892 100644 |
--- a/base/memory/discardable_memory_emulated.h |
+++ b/base/memory/discardable_memory_emulated.h |
@@ -7,10 +7,14 @@ |
#include "base/memory/discardable_memory.h" |
+#include "base/memory/discardable_memory_manager.h" |
+ |
namespace base { |
namespace internal { |
-class DiscardableMemoryEmulated : public DiscardableMemory { |
+class DiscardableMemoryEmulated |
+ : public DiscardableMemory, |
+ public internal::DiscardableMemoryManagerAllocation { |
public: |
explicit DiscardableMemoryEmulated(size_t size); |
virtual ~DiscardableMemoryEmulated(); |
@@ -27,8 +31,13 @@ class DiscardableMemoryEmulated : public DiscardableMemory { |
virtual void Unlock() OVERRIDE; |
virtual void* Memory() const OVERRIDE; |
+ // Overridden from internal::DiscardableMemoryManagerAllocation: |
+ virtual bool AllocateAndAcquireLock(size_t bytes) OVERRIDE; |
+ virtual void ReleaseLock() OVERRIDE {} |
+ virtual void Purge() OVERRIDE; |
+ |
private: |
- scoped_ptr<uint8, FreeDeleter> memory_; |
+ scoped_ptr<uint8[]> memory_; |
bool is_locked_; |
DISALLOW_COPY_AND_ASSIGN(DiscardableMemoryEmulated); |