Chromium Code Reviews| Index: chrome/browser/io_thread.cc |
| diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc |
| index 41d8709c78e96ec25425124e14cce21aea230a9f..718705d4cbff4fbcdf903086b3b288972c028bef 100644 |
| --- a/chrome/browser/io_thread.cc |
| +++ b/chrome/browser/io_thread.cc |
| @@ -42,6 +42,7 @@ |
| #include "chrome/common/chrome_version_info.h" |
| #include "chrome/common/pref_names.h" |
| #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_prefs.h" |
| +#include "components/data_reduction_proxy/core/common/data_reduction_proxy_params.h" |
| #include "components/policy/core/common/policy_service.h" |
| #include "components/variations/variations_associated_data.h" |
| #include "content/public/browser/browser_thread.h" |
| @@ -1039,6 +1040,7 @@ void IOThread::InitializeNetworkSessionParamsFromGlobals( |
| ¶ms->alternate_protocol_probability_threshold); |
| globals.enable_quic.CopyToIfSet(¶ms->enable_quic); |
| + globals.enable_quic_for_proxies.CopyToIfSet(¶ms->enable_quic_for_proxies); |
| globals.quic_always_require_handshake_confirmation.CopyToIfSet( |
| ¶ms->quic_always_require_handshake_confirmation); |
| globals.quic_disable_connection_pooling.CopyToIfSet( |
| @@ -1168,6 +1170,8 @@ void IOThread::ConfigureQuicGlobals( |
| IOThread::Globals* globals) { |
| bool enable_quic = ShouldEnableQuic(command_line, quic_trial_group); |
| globals->enable_quic.set(enable_quic); |
| + bool enable_quic_for_proxies = ShouldEnableQuicForProxies(); |
| + globals->enable_quic_for_proxies.set(enable_quic_for_proxies); |
| if (enable_quic) { |
| globals->quic_always_require_handshake_confirmation.set( |
| ShouldQuicAlwaysRequireHandshakeConfirmation(quic_trial_params)); |
| @@ -1249,6 +1253,22 @@ bool IOThread::ShouldEnableQuic(const base::CommandLine& command_line, |
| quic_trial_group.starts_with(kQuicFieldTrialHttpsEnabledGroupName); |
| } |
| +// static |
| +bool IOThread::ShouldEnableQuicForProxies() { |
| + const base::CommandLine& command_line = |
| + *base::CommandLine::ForCurrentProcess(); |
| + |
| + if (command_line.HasSwitch(switches::kDisableQuic)) |
| + return false; |
| + |
| + std::string quic_trial_group = |
| + base::FieldTrialList::FindFullName(kQuicFieldTrialName); |
| + |
| + return ShouldEnableQuic(command_line, quic_trial_group) || |
| + data_reduction_proxy::DataReductionProxyParams:: |
| + IsIncludedInQuicFieldTrial(); |
|
mmenke
2015/02/13 17:45:21
Per earlier comment, do we really want to enable Q
tbansal1
2015/02/13 18:03:47
This was based on rch@ suggestion. There was a con
mmenke
2015/02/13 18:09:44
Thanks for the followup! Happy to defer to rch he
|
| +} |
| + |
| bool IOThread::ShouldEnableQuicPortSelection( |
| const base::CommandLine& command_line) { |
| if (command_line.HasSwitch(switches::kDisableQuicPortSelection)) |