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

Unified Diff: net/url_request/url_request_file_job.cc

Issue 227943003: Add experiment to measure time to hash extension content as we read it (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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 side-by-side diff with in-line comments
Download patch
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) {

Powered by Google App Engine
This is Rietveld 408576698