Chromium Code Reviews| Index: net/url_request/url_request_file_job.cc |
| diff --git a/net/url_request/url_request_file_job.cc b/net/url_request/url_request_file_job.cc |
| index 7db8d818836bf77fb9398a1f3cbd4327f5030e4a..8d8094bccf1dd7b6d01d630ee0252f1825a6342c 100644 |
| --- a/net/url_request/url_request_file_job.cc |
| +++ b/net/url_request/url_request_file_job.cc |
| @@ -99,9 +99,11 @@ bool URLRequestFileJob::ReadRawData(IOBuffer* dest, int dest_size, |
| return true; |
| } |
| - int rv = stream_->Read(dest, dest_size, |
| + int rv = stream_->Read(dest, |
| + dest_size, |
| base::Bind(&URLRequestFileJob::DidRead, |
| - weak_ptr_factory_.GetWeakPtr())); |
| + weak_ptr_factory_.GetWeakPtr(), |
| + base::Unretained(dest))); |
|
rvargas (doing something else)
2014/04/08 16:53:45
This cannot be unretained because the stream is al
asargent_no_longer_on_chrome
2014/04/09 20:59:59
Ok, I guess I was confused by both the code flow a
rvargas (doing something else)
2014/04/09 23:48:50
yeah, the comment definitely can be improved.
|
| if (rv >= 0) { |
| // Data is immediately available. |
| *bytes_read = rv; |
| @@ -192,6 +194,9 @@ void URLRequestFileJob::SetExtraRequestHeaders( |
| } |
| } |
| +void URLRequestFileJob::OnSeekComplete(int64 result) {} |
|
rvargas (doing something else)
2014/04/08 16:53:45
nit: use {
}
and an empty line between the methods
asargent_no_longer_on_chrome
2014/04/09 20:59:59
Done.
(Note that 'git cl format' does {} without
|
| +void URLRequestFileJob::OnReadComplete(net::IOBuffer* buf, int result) {} |
| + |
| URLRequestFileJob::~URLRequestFileJob() { |
| } |
| @@ -273,6 +278,7 @@ void URLRequestFileJob::DidOpen(int result) { |
| } |
| void URLRequestFileJob::DidSeek(int64 result) { |
| + OnSeekComplete(result); |
| if (result != byte_range_.first_byte_position()) { |
| NotifyDone(URLRequestStatus(URLRequestStatus::FAILED, |
| ERR_REQUEST_RANGE_NOT_SATISFIABLE)); |
| @@ -283,7 +289,8 @@ void URLRequestFileJob::DidSeek(int64 result) { |
| NotifyHeadersComplete(); |
| } |
| -void URLRequestFileJob::DidRead(int result) { |
| +void URLRequestFileJob::DidRead(net::IOBuffer* buf, int result) { |
| + OnReadComplete(buf, result); |
| if (result > 0) { |
| SetStatus(URLRequestStatus()); // Clear the IO_PENDING status |
| } else if (result == 0) { |