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

Unified Diff: third_party/WebKit/Source/core/fetch/ResourceLoader.cpp

Issue 2487763003: [ImageLoader 2d] Set DecodeError by calling ResourceLoader::cancel()
Patch Set: Rebase Created 4 years, 1 month 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
Index: third_party/WebKit/Source/core/fetch/ResourceLoader.cpp
diff --git a/third_party/WebKit/Source/core/fetch/ResourceLoader.cpp b/third_party/WebKit/Source/core/fetch/ResourceLoader.cpp
index 019e5751274c124257b08cf8459ee358eca09de0..7c4061e48fd06cf9f526f306b1d3779f7fcebbe0 100644
--- a/third_party/WebKit/Source/core/fetch/ResourceLoader.cpp
+++ b/third_party/WebKit/Source/core/fetch/ResourceLoader.cpp
@@ -131,16 +131,19 @@ void ResourceLoader::didChangePriority(ResourceLoadPriority loadPriority,
}
}
-void ResourceLoader::cancel() {
+void ResourceLoader::cancel(Resource::Status errorStatus) {
didFail(
- ResourceError::cancelledError(m_resource->lastResourceRequest().url()));
+ ResourceError::cancelledError(m_resource->lastResourceRequest().url()),
+ errorStatus);
}
void ResourceLoader::cancelForRedirectAccessCheckError(const KURL& newURL) {
m_resource->willNotFollowRedirect();
- if (m_loader)
- didFail(ResourceError::cancelledDueToAccessCheckError(newURL));
+ if (m_loader) {
+ didFail(ResourceError::cancelledDueToAccessCheckError(newURL),
+ Resource::LoadError);
+ }
}
bool ResourceLoader::willFollowRedirect(
@@ -153,7 +156,8 @@ bool ResourceLoader::willFollowRedirect(
if (m_isCacheAwareLoadingActivated) {
// Fail as cache miss if cached response is a redirect.
didFail(
- ResourceError::cacheMissError(m_resource->lastResourceRequest().url()));
+ ResourceError::cacheMissError(m_resource->lastResourceRequest().url()),
+ Resource::LoadError);
return false;
}
@@ -242,10 +246,14 @@ void ResourceLoader::didFinishLoading(WebURLLoader*,
}
void ResourceLoader::didFail(WebURLLoader*, const WebURLError& error) {
- didFail(error);
+ didFail(error, Resource::LoadError);
}
-void ResourceLoader::didFail(const ResourceError& error) {
+void ResourceLoader::didFail(const ResourceError& error,
+ Resource::Status errorStatus) {
+ if (!m_loader)
+ return;
+
if (m_isCacheAwareLoadingActivated && error.isCacheMiss()) {
m_resource->willReloadAfterDiskCacheMiss();
m_isCacheAwareLoadingActivated = false;
@@ -256,7 +264,7 @@ void ResourceLoader::didFail(const ResourceError& error) {
}
m_loader.reset();
- m_fetcher->didFailLoading(m_resource.get(), error);
+ m_fetcher->didFailLoading(m_resource.get(), error, errorStatus);
}
void ResourceLoader::requestSynchronously(const ResourceRequest& request) {

Powered by Google App Engine
This is Rietveld 408576698