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

Unified Diff: content/browser/download/download_resource_handler.cc

Issue 8404049: Added member data to classes to support download resumption. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Updated comment. Created 9 years 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: content/browser/download/download_resource_handler.cc
diff --git a/content/browser/download/download_resource_handler.cc b/content/browser/download/download_resource_handler.cc
index 26f575c49c82fdeb35422b113f9f5b1c1d4a7ef0..718450476f8485a87eae394b6649a75b36bfa15a 100644
--- a/content/browser/download/download_resource_handler.cc
+++ b/content/browser/download/download_resource_handler.cc
@@ -104,7 +104,7 @@ bool DownloadResourceHandler::OnResponseStarted(
info->url_chain = request_->url_chain();
info->referrer_url = GURL(request_->referrer());
info->start_time = base::Time::Now();
- info->received_bytes = 0;
+ info->received_bytes = save_info_.offset;
info->total_bytes = content_length_;
info->state = DownloadItem::IN_PROGRESS;
info->download_id = download_id_;
@@ -117,8 +117,16 @@ bool DownloadResourceHandler::OnResponseStarted(
DownloadRequestHandle request_handle(rdh_, global_id_.child_id,
render_view_id_, global_id_.request_id);
- // TODO(ahendrickson) -- Get the last modified time and etag, so we can
- // resume downloading.
+ // Get the last modified time and etag.
+ const net::HttpResponseHeaders* headers = request_->response_headers();
+ if (headers) {
+ std::string last_modified_hdr;
+ std::string etag;
+ if (headers->EnumerateHeader(NULL, "Last-Modified", &last_modified_hdr))
+ info->last_modified = last_modified_hdr;
+ if (headers->EnumerateHeader(NULL, "ETag", &etag))
+ info->etag = etag;
+ }
CallStartedCB(net::OK);

Powered by Google App Engine
This is Rietveld 408576698