Index: chrome/browser/renderer_host/download_resource_handler.cc |
diff --git a/chrome/browser/renderer_host/download_resource_handler.cc b/chrome/browser/renderer_host/download_resource_handler.cc |
index b6f2e7dd254ac9a6085109dc6dfd3bdd9960c110..ece0245697c46e48b1b3df75288b50675d67bfa5 100644 |
--- a/chrome/browser/renderer_host/download_resource_handler.cc |
+++ b/chrome/browser/renderer_host/download_resource_handler.cc |
@@ -11,6 +11,7 @@ |
#include "chrome/browser/history/download_create_info.h" |
#include "chrome/browser/renderer_host/global_request_id.h" |
#include "chrome/browser/renderer_host/resource_dispatcher_host.h" |
+#include "chrome/browser/renderer_host/resource_dispatcher_host_request_info.h" |
#include "chrome/common/resource_response.h" |
#include "net/base/io_buffer.h" |
#include "net/http/http_response_headers.h" |
@@ -64,6 +65,9 @@ bool DownloadResourceHandler::OnResponseStarted(int request_id, |
set_content_disposition(content_disposition); |
set_content_length(response->response_head.content_length); |
+ const ResourceDispatcherHostRequestInfo* request_info = |
+ ResourceDispatcherHost::InfoForRequest(request_); |
+ |
download_id_ = download_file_manager_->GetNextId(); |
// |download_file_manager_| consumes (deletes): |
DownloadCreateInfo* info = new DownloadCreateInfo; |
@@ -74,6 +78,7 @@ bool DownloadResourceHandler::OnResponseStarted(int request_id, |
info->total_bytes = content_length_; |
info->state = DownloadItem::IN_PROGRESS; |
info->download_id = download_id_; |
+ info->has_user_gesture = request_info->has_user_gesture(); |
info->child_id = global_id_.child_id; |
info->render_view_id = render_view_id_; |
info->request_id = global_id_.request_id; |