Index: net/quic/quic_stream_factory.cc |
diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc |
index 06e7825fb096835070df21a36e1464a07f62dea6..28bb5939278c208fcbc09328c4f9ec3c33d7a333 100644 |
--- a/net/quic/quic_stream_factory.cc |
+++ b/net/quic/quic_stream_factory.cc |
@@ -327,6 +327,13 @@ int QuicStreamFactory::Create(const HostPortProxyPair& host_port_proxy_pair, |
return ERR_IO_PENDING; |
} |
+ if (quic_server_info_factory_) { |
+ // Start the async lookup of crypto config data from the disk cache. |
+ quic_server_info_.reset(quic_server_info_factory_->GetForHost( |
+ host_port_proxy_pair.first.host())); |
+ quic_server_info_->Start(); |
wtc
2014/01/30 20:14:26
It is wrong to set quic_server_info_ here, because
ramant (doing other things)
2014/02/02 19:35:10
Modified the code to create the crypto config and
|
+ } |
+ |
scoped_ptr<Job> job(new Job(this, host_resolver_, host_port_proxy_pair, |
is_https, cert_verifier, net_log)); |
int rv = job->Run(base::Bind(&QuicStreamFactory::OnJobComplete, |
@@ -606,7 +613,7 @@ QuicCryptoClientConfig* QuicStreamFactory::GetOrCreateCryptoConfig( |
} else { |
// TODO(rtenneti): if two quic_sessions for the same host_port_proxy_pair |
// share the same crypto_config, will it cause issues? |
- crypto_config = new QuicCryptoClientConfig(quic_server_info_factory_); |
+ crypto_config = new QuicCryptoClientConfig(quic_server_info_.Pass()); |
crypto_config->SetDefaults(); |
all_crypto_configs_[host_port_proxy_pair] = crypto_config; |
PopulateFromCanonicalConfig(host_port_proxy_pair, crypto_config); |