Index: content/browser/loader/async_resource_handler.cc |
diff --git a/content/browser/loader/async_resource_handler.cc b/content/browser/loader/async_resource_handler.cc |
index 52c1d8fd251d089c57fd2f37405afd89f688ea32..94628c7dc6db7fc9062f48a6c30616d76dad3038 100644 |
--- a/content/browser/loader/async_resource_handler.cc |
+++ b/content/browser/loader/async_resource_handler.cc |
@@ -197,6 +197,15 @@ bool AsyncResourceHandler::OnResponseStarted(int request_id, |
net::GetHostOrSpecFromURL(request_url)))); |
} |
+ // If the parent handler downloaded the resource to a file, grant the child |
+ // read permissions on it. Note: there is similar logic in |
+ // SyncResourceHandler. |
+ if (!response->head.download_file_path.empty()) { |
+ rdh_->RegisterDownloadedTempFile( |
+ info->GetChildID(), info->GetRequestID(), |
+ response->head.download_file_path); |
+ } |
+ |
response->head.request_start = request()->creation_time(); |
response->head.response_start = TimeTicks::Now(); |
info->filter()->Send(new ResourceMsg_ReceivedResponse(request_id, |