Chromium Code Reviews| Index: net/http/http_network_transaction.cc |
| diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc |
| index cf67b1d68131bc18710a182cd295efa6013a5f1d..3af8a80bc2a03cee58a3297b9d69798977dfdf41 100644 |
| --- a/net/http/http_network_transaction.cc |
| +++ b/net/http/http_network_transaction.cc |
| @@ -1012,6 +1012,14 @@ int HttpNetworkTransaction::DoReadHeadersComplete(int result) { |
| = response_.headers->GetDataReductionProxyBypassEventType( |
| &data_reduction_proxy_info); |
| if (proxy_bypass_event < ProxyService::BYPASS_EVENT_TYPE_MAX) { |
| + // Bypass all proxies for one second on reception of a 4xx that |
| + // originated at the proxy. |
|
Matt Welsh
2014/05/23 23:56:30
We shouldn't be bypassing all 4xx errors. This sho
bengr
2014/05/24 01:22:02
GetDataReductionBypassEventType decides if we shou
|
| + if (proxy_bypass_event == ProxyService::CLIENT_ERROR_BYPASS) { |
| + data_reduction_proxy_info.bypass_all = true; |
| + data_reduction_proxy_info.bypass_duration = |
| + base::TimeDelta::FromSeconds(1); |
| + } |
| + |
| ProxyService* proxy_service = session_->proxy_service(); |
| proxy_service->RecordDataReductionProxyBypassInfo( |