diff options
Diffstat (limited to 'Source/WebCore/loader/SubresourceLoader.cpp')
-rw-r--r-- | Source/WebCore/loader/SubresourceLoader.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Source/WebCore/loader/SubresourceLoader.cpp b/Source/WebCore/loader/SubresourceLoader.cpp index 6273a8d33..56de0d341 100644 --- a/Source/WebCore/loader/SubresourceLoader.cpp +++ b/Source/WebCore/loader/SubresourceLoader.cpp @@ -139,8 +139,8 @@ void SubresourceLoader::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) co { MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::Loader); ResourceLoader::reportMemoryUsage(memoryObjectInfo); - info.addInstrumentedMember(m_resource); - info.addInstrumentedMember(m_document); + info.addMember(m_resource); + info.addMember(m_document); info.addMember(m_requestCountTracker); } @@ -167,11 +167,13 @@ void SubresourceLoader::willSendRequest(ResourceRequest& newRequest, const Resou ResourceLoader::willSendRequest(newRequest, redirectResponse); if (!previousURL.isNull() && !newRequest.isNull() && previousURL != newRequest.url()) { - if (!m_document->cachedResourceLoader()->canRequest(m_resource->type(), newRequest.url())) { - cancel(); - return; + if (m_document->cachedResourceLoader()->canRequest(m_resource->type(), newRequest.url())) { + if (m_resource->type() != CachedResource::ImageResource || !m_document->cachedResourceLoader()->shouldDeferImageLoad(newRequest.url())) { + m_resource->willSendRequest(newRequest, redirectResponse); + return; + } } - m_resource->willSendRequest(newRequest, redirectResponse); + cancel(); } } |