Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1729)

Unified Diff: skia/ext/SkDiscardableMemory_chrome.cc

Issue 24988003: Refactor DiscardableMemory for the upcoming DiscardableMemoryAllocator. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add death unit test + fix Android implementation Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: skia/ext/SkDiscardableMemory_chrome.cc
diff --git a/skia/ext/SkDiscardableMemory_chrome.cc b/skia/ext/SkDiscardableMemory_chrome.cc
index 2e78788febc2d595607cafb412157771cbd4ebfd..6639a5ac54ddf3ab77fae237f87e06513ade4c3e 100644
--- a/skia/ext/SkDiscardableMemory_chrome.cc
+++ b/skia/ext/SkDiscardableMemory_chrome.cc
@@ -4,15 +4,10 @@
#include "SkDiscardableMemory_chrome.h"
-SkDiscardableMemoryChrome::SkDiscardableMemoryChrome()
- : discardable_(new base::DiscardableMemory()) {
-}
-
-SkDiscardableMemoryChrome::~SkDiscardableMemoryChrome() {
-}
+SkDiscardableMemoryChrome::~SkDiscardableMemoryChrome() {}
bool SkDiscardableMemoryChrome::lock() {
- base::LockDiscardableMemoryStatus status = discardable_->Lock();
+ const base::LockDiscardableMemoryStatus status = discardable_->Lock();
switch (status) {
case base::DISCARDABLE_MEMORY_SUCCESS:
return true;
@@ -33,17 +28,17 @@ void SkDiscardableMemoryChrome::unlock() {
discardable_->Unlock();
}
-bool SkDiscardableMemoryChrome::InitializeAndLock(size_t bytes) {
- return discardable_->InitializeAndLock(bytes);
+SkDiscardableMemoryChrome::SkDiscardableMemoryChrome(
+ scoped_ptr<base::DiscardableMemory> memory)
+ : discardable_(memory.Pass()) {
}
SkDiscardableMemory* SkDiscardableMemory::Create(size_t bytes) {
- if (!base::DiscardableMemory::Supported()) {
+ if (!base::DiscardableMemory::Supported())
return NULL;
- }
- scoped_ptr<SkDiscardableMemoryChrome> discardable(
- new SkDiscardableMemoryChrome());
- if (discardable->InitializeAndLock(bytes))
- return discardable.release();
- return NULL;
+ scoped_ptr<base::DiscardableMemory> discardable(
+ base::DiscardableMemory::CreateLockedMemory(bytes));
+ if (!discardable)
+ return NULL;
+ return new SkDiscardableMemoryChrome(discardable.Pass());
}

Powered by Google App Engine
This is Rietveld 408576698