| Index: ios/chrome/browser/ios_chrome_io_thread.mm
|
| diff --git a/ios/chrome/browser/ios_chrome_io_thread.mm b/ios/chrome/browser/ios_chrome_io_thread.mm
|
| index 4e76c5a8fc5c119bc152e39b292588ea7d6bc901..1cd36dab8827519749fbe6b3fe7dbff9430bcee9 100644
|
| --- a/ios/chrome/browser/ios_chrome_io_thread.mm
|
| +++ b/ios/chrome/browser/ios_chrome_io_thread.mm
|
| @@ -137,6 +137,11 @@ const char kNpnTrialName[] = "NPN";
|
| const char kNpnTrialEnabledGroupNamePrefix[] = "Enable";
|
| const char kNpnTrialDisabledGroupNamePrefix[] = "Disable";
|
|
|
| +// Field trial for priority dependencies.
|
| +const char kSpdyDependenciesFieldTrial[] = "SpdyEnableDependencies";
|
| +const char kSpdyDependenciesFieldTrialEnable[] = "Enable";
|
| +const char kSpdyDepencenciesFieldTrialDisable[] = "Disable";
|
| +
|
| // Used for the "system" URLRequestContext.
|
| class SystemURLRequestContext : public net::URLRequestContext {
|
| public:
|
| @@ -455,6 +460,7 @@ void IOSChromeIOThread::Init() {
|
| ConfigureAltSvcGlobals(
|
| base::FieldTrialList::FindFullName(kAltSvcFieldTrialName), globals_);
|
| ConfigureQuic();
|
| + ConfigurePriorityDependencies();
|
| InitializeNetworkOptions();
|
|
|
| const version_info::Channel channel = ::GetChannel();
|
| @@ -647,6 +653,9 @@ void IOSChromeIOThread::InitializeNetworkSessionParamsFromGlobals(
|
|
|
| globals.enable_npn.CopyToIfSet(¶ms->enable_npn);
|
|
|
| + globals.enable_priority_dependencies.CopyToIfSet(
|
| + ¶ms->enable_priority_dependencies);
|
| +
|
| 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(
|
| @@ -727,6 +736,16 @@ void IOSChromeIOThread::InitSystemRequestContextOnIOThread() {
|
| ConstructSystemRequestContext(globals_, net_log_));
|
| }
|
|
|
| +void IOSChromeIOThread::ConfigurePriorityDependencies() {
|
| + std::string group =
|
| + base::FieldTrialList::FindFullName(kSpdyDependenciesFieldTrial);
|
| + if (group == kSpdyDependenciesFieldTrialEnable) {
|
| + globals_->enable_priority_dependencies.set(true);
|
| + } else if (group == kSpdyDepencenciesFieldTrialDisable) {
|
| + globals_->enable_priority_dependencies.set(false);
|
| + }
|
| +}
|
| +
|
| void IOSChromeIOThread::ConfigureQuic() {
|
| // Always fetch the field trial group to ensure it is reported correctly.
|
| // The command line flags will be associated with a group that is reported
|
|
|