Index: third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp |
diff --git a/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp b/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp |
index 928fe91e88a35d2facf26dcfb595da52b2f860b0..61385d00628ca5d65693ce1500c33e449ba1b04f 100644 |
--- a/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp |
+++ b/third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp |
@@ -1170,13 +1170,8 @@ void ResourceFetcher::didFinishLoading(Resource* resource, |
context().dispatchDidFinishLoading(resource->identifier(), finishTime, |
encodedDataLength); |
if (finishReason == DidFinishLoading) |
- resource->finish(finishTime); |
+ resource->finish(finishTime, this); |
context().didLoadResource(resource); |
- |
- if (resource->isImage() && |
- toImageResource(resource)->shouldReloadBrokenPlaceholder()) { |
- toImageResource(resource)->reloadIfLoFiOrPlaceholder(this); |
- } |
} |
void ResourceFetcher::didFailLoading(Resource* resource, |
@@ -1188,13 +1183,8 @@ void ResourceFetcher::didFailLoading(Resource* resource, |
bool isInternalRequest = resource->options().initiatorInfo.name == |
FetchInitiatorTypeNames::internal; |
context().dispatchDidFail(resource->identifier(), error, isInternalRequest); |
- resource->error(error); |
+ resource->error(error, this); |
context().didLoadResource(resource); |
- |
- if (resource->isImage() && |
- toImageResource(resource)->shouldReloadBrokenPlaceholder()) { |
- toImageResource(resource)->reloadIfLoFiOrPlaceholder(this); |
- } |
} |
void ResourceFetcher::didReceiveResponse( |
@@ -1443,11 +1433,14 @@ void ResourceFetcher::updateAllImageResourcePriorities() { |
} |
void ResourceFetcher::reloadLoFiImages() { |
- for (const auto& documentResource : m_documentResources) { |
+ for (auto& documentResource : m_documentResources) { |
Resource* resource = documentResource.value.get(); |
if (resource && resource->isImage()) { |
ImageResource* imageResource = toImageResource(resource); |
- imageResource->reloadIfLoFiOrPlaceholder(this); |
+ ImageResource* newImageResource = |
+ imageResource->reloadIfLoFiOrPlaceholder(this); |
+ if (newImageResource) |
+ documentResource.value = newImageResource; |
} |
} |
} |