Index: net/http/http_network_transaction.cc |
diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc |
index 32af2dd1844a8170be8615aa2701601e24ee0b63..0d8e4c917e11bd9954d2139d484917e73d76f987 100644 |
--- a/net/http/http_network_transaction.cc |
+++ b/net/http/http_network_transaction.cc |
@@ -465,6 +465,11 @@ void HttpNetworkTransaction::SetBeforeNetworkStartCallback( |
before_network_start_callback_ = callback; |
} |
+void HttpNetworkTransaction::SetBeforeProxyHeadersSentCallback( |
+ const BeforeProxyHeadersSentCallback& callback) { |
+ before_proxy_headers_sent_callback_ = callback; |
+} |
+ |
int HttpNetworkTransaction::ResumeNetworkStart() { |
DCHECK_EQ(next_state_, STATE_CREATE_STREAM); |
return DoLoop(OK); |
@@ -879,6 +884,9 @@ void HttpNetworkTransaction::BuildRequestHeaders(bool using_proxy) { |
auth_controllers_[HttpAuth::AUTH_SERVER]->AddAuthorizationHeader( |
&request_headers_); |
+ if (using_proxy && !before_proxy_headers_sent_callback_.is_null()) |
mef
2014/06/24 17:41:56
Why is it here and not where OnBeforeSendHeaders i
bengr
2014/06/24 19:01:51
Because OnBeforeSendHeaders is called before we kn
|
+ before_proxy_headers_sent_callback_.Run(&proxy_info_); |
+ |
request_headers_.MergeFrom(request_->extra_headers); |
response_.did_use_http_auth = |
request_headers_.HasHeader(HttpRequestHeaders::kAuthorization) || |