Index: net/url_request/url_request_job.cc |
diff --git a/net/url_request/url_request_job.cc b/net/url_request/url_request_job.cc |
index ac051270ccf588a4164cf8e6b31267a6479c6ab5..f1d69efdf9598f55cf3ca4b82b2575267c7b8592 100644 |
--- a/net/url_request/url_request_job.cc |
+++ b/net/url_request/url_request_job.cc |
@@ -13,8 +13,10 @@ |
#include "net/base/load_flags.h" |
#include "net/base/mime_util.h" |
#include "net/base/net_errors.h" |
+#include "net/http/http_network_delegate.h" |
#include "net/http/http_response_headers.h" |
#include "net/url_request/url_request.h" |
+#include "net/url_request/url_request_context.h" |
#include "net/url_request/url_request_job_metrics.h" |
#include "net/url_request/url_request_job_tracker.h" |
@@ -530,10 +532,18 @@ void URLRequestJob::NotifyReadComplete(int bytes_read) { |
int filter_bytes_read = 0; |
if (ReadFilteredData(&filter_bytes_read)) { |
postfilter_bytes_read_ += filter_bytes_read; |
+ if (request_->context() && request_->context()->network_delegate()) { |
+ request_->context()->network_delegate()->OnReadCompleted( |
+ request_, filter_bytes_read); |
+ } |
request_->delegate()->OnReadCompleted(request_, filter_bytes_read); |
} |
} else { |
postfilter_bytes_read_ += bytes_read; |
+ if (request_->context() && request_->context()->network_delegate()) { |
+ request_->context()->network_delegate()->OnReadCompleted( |
+ request_, bytes_read); |
+ } |
request_->delegate()->OnReadCompleted(request_, bytes_read); |
} |
} |
@@ -605,6 +615,8 @@ void URLRequestJob::CompleteNotifyDone() { |
// OnResponseStarted yet. |
if (has_handled_response_) { |
// We signal the error by calling OnReadComplete with a bytes_read of -1. |
+ if (request_->context() && request_->context()->network_delegate()) |
+ request_->context()->network_delegate()->OnReadCompleted(request_, -1); |
request_->delegate()->OnReadCompleted(request_, -1); |
} else { |
has_handled_response_ = true; |