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

Unified Diff: Source/core/loader/cache/ResourceFetcher.cpp

Issue 19597008: If a resource load is started as the CachedResourceLoader is going away, make sure we remove the Ca… (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: + test Created 7 years, 5 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
« no previous file with comments | « Source/core/core.gypi ('k') | Source/core/loader/cache/ResourceFetcherTest.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/loader/cache/ResourceFetcher.cpp
diff --git a/Source/core/loader/cache/ResourceFetcher.cpp b/Source/core/loader/cache/ResourceFetcher.cpp
index fb388beed5c03e521338bd717c2e6625d473488d..0efc5c1f45e7e18fad3de9a4c97d389ec68cdc96 100644
--- a/Source/core/loader/cache/ResourceFetcher.cpp
+++ b/Source/core/loader/cache/ResourceFetcher.cpp
@@ -502,12 +502,11 @@ CachedResourceHandle<CachedResource> ResourceFetcher::requestResource(CachedReso
}
if ((policy != Use || resource->stillNeedsLoad()) && FetchRequest::NoDefer == request.defer()) {
- if (!frame())
- return 0;
-
- FrameLoader* frameLoader = this->frameLoader();
- if (request.options().securityCheck == DoSecurityCheck && (frameLoader->state() == FrameStateProvisional || !frameLoader->activeDocumentLoader() || frameLoader->activeDocumentLoader()->isStopping()))
+ if (!frame() || m_documentLoader != frame()->loader()->activeDocumentLoader() || m_documentLoader->isStopping()) {
+ if (resource->inCache())
+ memoryCache()->remove(resource.get());
return 0;
+ }
if (!m_documentLoader->scheduleArchiveLoad(resource.get(), request.resourceRequest()))
resource->load(this, request.options());
« no previous file with comments | « Source/core/core.gypi ('k') | Source/core/loader/cache/ResourceFetcherTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698