Index: net/disk_cache/simple/simple_entry_impl.cc |
diff --git a/net/disk_cache/simple/simple_entry_impl.cc b/net/disk_cache/simple/simple_entry_impl.cc |
index e4e7220af7039c26924b58fb4737de40e995aaee..104674c0867bf7ef3f24f8d4f3f7ed6ecc1ff2bc 100644 |
--- a/net/disk_cache/simple/simple_entry_impl.cc |
+++ b/net/disk_cache/simple/simple_entry_impl.cc |
@@ -253,6 +253,8 @@ int SimpleEntryImpl::CreateEntry(Entry** out_entry, |
} |
int SimpleEntryImpl::DoomEntry(const CompletionCallback& callback) { |
+ if (doomed_) |
+ return net::OK; |
net_log_.AddEvent(net::NetLog::TYPE_SIMPLE_CACHE_ENTRY_DOOM_CALL); |
net_log_.AddEvent(net::NetLog::TYPE_SIMPLE_CACHE_ENTRY_DOOM_BEGIN); |
@@ -529,9 +531,9 @@ void SimpleEntryImpl::RemoveSelfFromBackend() { |
} |
void SimpleEntryImpl::MarkAsDoomed() { |
+ doomed_ = true; |
if (!backend_.get()) |
return; |
- doomed_ = true; |
backend_->index()->Remove(entry_hash_); |
RemoveSelfFromBackend(); |
} |