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)) |