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

Side by Side Diff: content/browser/download/save_file_resource_handler.cc

Issue 10332130: Use defer out-params instead of ResourceDispatcherHostImpl::PauseRequest(...true) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 7 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/download/save_file_resource_handler.h" 5 #include "content/browser/download/save_file_resource_handler.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/string_number_conversions.h" 10 #include "base/string_number_conversions.h"
(...skipping 26 matching lines...) Expand all
37 int request_id, 37 int request_id,
38 const GURL& url, 38 const GURL& url,
39 content::ResourceResponse* response, 39 content::ResourceResponse* response,
40 bool* defer) { 40 bool* defer) {
41 final_url_ = url; 41 final_url_ = url;
42 return true; 42 return true;
43 } 43 }
44 44
45 bool SaveFileResourceHandler::OnResponseStarted( 45 bool SaveFileResourceHandler::OnResponseStarted(
46 int request_id, 46 int request_id,
47 content::ResourceResponse* response) { 47 content::ResourceResponse* response,
48 bool* defer) {
48 save_id_ = save_manager_->GetNextId(); 49 save_id_ = save_manager_->GetNextId();
49 // |save_manager_| consumes (deletes): 50 // |save_manager_| consumes (deletes):
50 SaveFileCreateInfo* info = new SaveFileCreateInfo; 51 SaveFileCreateInfo* info = new SaveFileCreateInfo;
51 info->url = url_; 52 info->url = url_;
52 info->final_url = final_url_; 53 info->final_url = final_url_;
53 info->total_bytes = content_length_; 54 info->total_bytes = content_length_;
54 info->save_id = save_id_; 55 info->save_id = save_id_;
55 info->render_process_id = render_process_id_; 56 info->render_process_id = render_process_id_;
56 info->render_view_id = render_view_id_; 57 info->render_view_id = render_view_id_;
57 info->request_id = request_id; 58 info->request_id = request_id;
(...skipping 15 matching lines...) Expand all
73 int* buf_size, int min_size) { 74 int* buf_size, int min_size) {
74 DCHECK(buf && buf_size); 75 DCHECK(buf && buf_size);
75 if (!read_buffer_) { 76 if (!read_buffer_) {
76 *buf_size = min_size < 0 ? kReadBufSize : min_size; 77 *buf_size = min_size < 0 ? kReadBufSize : min_size;
77 read_buffer_ = new net::IOBuffer(*buf_size); 78 read_buffer_ = new net::IOBuffer(*buf_size);
78 } 79 }
79 *buf = read_buffer_.get(); 80 *buf = read_buffer_.get();
80 return true; 81 return true;
81 } 82 }
82 83
83 bool SaveFileResourceHandler::OnReadCompleted(int request_id, int* bytes_read) { 84 bool SaveFileResourceHandler::OnReadCompleted(int request_id, int* bytes_read,
85 bool* defer) {
84 DCHECK(read_buffer_); 86 DCHECK(read_buffer_);
85 // We are passing ownership of this buffer to the save file manager. 87 // We are passing ownership of this buffer to the save file manager.
86 scoped_refptr<net::IOBuffer> buffer; 88 scoped_refptr<net::IOBuffer> buffer;
87 read_buffer_.swap(buffer); 89 read_buffer_.swap(buffer);
88 BrowserThread::PostTask( 90 BrowserThread::PostTask(
89 BrowserThread::FILE, FROM_HERE, 91 BrowserThread::FILE, FROM_HERE,
90 base::Bind(&SaveFileManager::UpdateSaveProgress, 92 base::Bind(&SaveFileManager::UpdateSaveProgress,
91 save_manager_, save_id_, buffer, *bytes_read)); 93 save_manager_, save_id_, buffer, *bytes_read));
92 return true; 94 return true;
93 } 95 }
(...skipping 12 matching lines...) Expand all
106 108
107 void SaveFileResourceHandler::OnRequestClosed() { 109 void SaveFileResourceHandler::OnRequestClosed() {
108 } 110 }
109 111
110 void SaveFileResourceHandler::set_content_length( 112 void SaveFileResourceHandler::set_content_length(
111 const std::string& content_length) { 113 const std::string& content_length) {
112 base::StringToInt64(content_length, &content_length_); 114 base::StringToInt64(content_length, &content_length_);
113 } 115 }
114 116
115 SaveFileResourceHandler::~SaveFileResourceHandler() {} 117 SaveFileResourceHandler::~SaveFileResourceHandler() {}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698