Index: webkit/child/weburlloader_impl.cc |
diff --git a/webkit/child/weburlloader_impl.cc b/webkit/child/weburlloader_impl.cc |
index 54827b6cf8cb5d1c534a78310b8f1af78d7d8a47..759af5bd6cf8eae60ad0bd1ba97713386a54bc53 100644 |
--- a/webkit/child/weburlloader_impl.cc |
+++ b/webkit/child/weburlloader_impl.cc |
@@ -245,6 +245,7 @@ class WebURLLoaderImpl::Context : public base::RefCounted<Context>, |
virtual void OnCompletedRequest( |
int error_code, |
bool was_ignored_by_handler, |
+ bool stale_copy_in_cache, |
const std::string& security_info, |
const base::TimeTicks& completion_time) OVERRIDE; |
@@ -601,6 +602,7 @@ void WebURLLoaderImpl::Context::OnReceivedCachedMetadata( |
void WebURLLoaderImpl::Context::OnCompletedRequest( |
int error_code, |
bool was_ignored_by_handler, |
+ bool stale_copy_in_cache, |
const std::string& security_info, |
const base::TimeTicks& completion_time) { |
if (ftp_listing_delegate_) { |
@@ -618,7 +620,9 @@ void WebURLLoaderImpl::Context::OnCompletedRequest( |
if (client_) { |
if (error_code != net::OK) { |
- client_->didFail(loader_, CreateError(request_.url(), error_code)); |
+ client_->didFail(loader_, CreateError(request_.url(), |
+ stale_copy_in_cache, |
+ error_code)); |
} else { |
client_->didFinishLoading( |
loader_, (completion_time - TimeTicks()).InSecondsF()); |
@@ -672,7 +676,7 @@ void WebURLLoaderImpl::Context::HandleDataURL() { |
OnReceivedData(data.data(), data.size(), 0); |
} |
- OnCompletedRequest(error_code, false, info.security_info, |
+ OnCompletedRequest(error_code, false, false, info.security_info, |
base::TimeTicks::Now()); |
} |
@@ -688,11 +692,13 @@ WebURLLoaderImpl::~WebURLLoaderImpl() { |
} |
WebURLError WebURLLoaderImpl::CreateError(const WebURL& unreachable_url, |
+ bool stale_copy_in_cache, |
int reason) { |
WebURLError error; |
error.domain = WebString::fromUTF8(net::kErrorDomain); |
error.reason = reason; |
error.unreachableURL = unreachable_url; |
+ error.staleCopyInCache = stale_copy_in_cache; |
if (reason == net::ERR_ABORTED) { |
error.isCancellation = true; |
} else if (reason == net::ERR_TEMPORARILY_THROTTLED) { |