| 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) {
|
|
|