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 c10b9a9682ccdc81789ec0b463f4832a8b7b1a9c..884d7f0c5289bda8ac3d701781e660ea291d51e9 100644 |
--- a/third_party/WebKit/Source/core/fetch/ImageResource.cpp |
+++ b/third_party/WebKit/Source/core/fetch/ImageResource.cpp |
@@ -511,14 +511,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); |
} |