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

Unified Diff: net/disk_cache/backend_impl.cc

Issue 11458003: Remove scoped_refptr::release which is confusing and causes leaks. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix mac Created 8 years 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: net/disk_cache/backend_impl.cc
diff --git a/net/disk_cache/backend_impl.cc b/net/disk_cache/backend_impl.cc
index 2e42c559caec0276648363447433a89abe0677d9..c8d081d35fe31453f01bf315ba7bb521b9e220b6 100644
--- a/net/disk_cache/backend_impl.cc
+++ b/net/disk_cache/backend_impl.cc
@@ -812,7 +812,8 @@ EntryImpl* BackendImpl::CreateEntryImpl(const std::string& key) {
SIMPLE_STATS_COUNTER("disk_cache.miss");
Trace("create entry hit ");
FlushIndex();
- return cache_entry.release();
+ cache_entry->AddRef();
+ return cache_entry.get();
}
EntryImpl* BackendImpl::OpenNextEntryImpl(void** iter) {
@@ -1824,14 +1825,15 @@ EntryImpl* BackendImpl::OpenFollowingEntry(bool forward, void** iter) {
EntryImpl* next_entry;
if (forward) {
- next_entry = entries[newest].release();
+ next_entry = entries[newest].get();
iterator->list = static_cast<Rankings::List>(newest);
} else {
- next_entry = entries[oldest].release();
+ next_entry = entries[oldest].get();
iterator->list = static_cast<Rankings::List>(oldest);
}
*iter = iterator.release();
+ next_entry->AddRef();
return next_entry;
}

Powered by Google App Engine
This is Rietveld 408576698