Index: third_party/WebKit/Source/core/fetch/ImageResource.cpp |
diff --git a/third_party/WebKit/Source/core/fetch/ImageResource.cpp b/third_party/WebKit/Source/core/fetch/ImageResource.cpp |
index 18de9a4285356fd2ddb05e57b41507077369464a..908f97b764d68bf23455e2b879925283acc1ec1b 100644 |
--- a/third_party/WebKit/Source/core/fetch/ImageResource.cpp |
+++ b/third_party/WebKit/Source/core/fetch/ImageResource.cpp |
@@ -522,14 +522,17 @@ void ImageResource::updateImageAnimationPolicy() |
void ImageResource::reloadIfLoFi(ResourceFetcher* fetcher) |
{ |
- if (!m_response.httpHeaderField("chrome-proxy").contains("q=low")) |
+ if (m_resourceRequest.loFiState() != WebURLRequest::LoFiOn) |
+ return; |
+ if (isLoaded() && !m_response.httpHeaderField("chrome-proxy").contains("q=low")) |
return; |
m_resourceRequest.setCachePolicy(WebCachePolicy::BypassingCache); |
m_resourceRequest.setLoFiState(WebURLRequest::LoFiOff); |
if (isLoading()) |
m_loader->cancel(); |
- else |
- updateImageAndClearBuffer(); |
+ clear(); |
+ m_data.clear(); |
+ notifyObservers(); |
setStatus(NotStarted); |
fetcher->startLoad(this); |
} |