Index: chrome/browser/net/http_server_properties_manager.cc |
diff --git a/chrome/browser/net/http_server_properties_manager.cc b/chrome/browser/net/http_server_properties_manager.cc |
index f3d8d736f036b7a32048384da489243530d3c333..24ccfa0e6db5b92f7b87f21ea22c30a3c32df7a6 100644 |
--- a/chrome/browser/net/http_server_properties_manager.cc |
+++ b/chrome/browser/net/http_server_properties_manager.cc |
@@ -49,6 +49,9 @@ const int kMaxAlternateProtocolHostsToPersist = 200; |
// Persist 200 MRU SpdySettingsHostPortPairs. |
const int kMaxSpdySettingsHostsToPersist = 200; |
+// Persist 300 MRU SupportsSpdyServerHostPortPairs. |
+const int kMaxSupportsSpdyServerHostsToPersist = 300; |
+ |
} // namespace |
//////////////////////////////////////////////////////////////////////////////// |
@@ -139,7 +142,7 @@ void HttpServerPropertiesManager::Clear(const base::Closure& completion) { |
} |
bool HttpServerPropertiesManager::SupportsSpdy( |
- const net::HostPortPair& server) const { |
+ const net::HostPortPair& server) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
return http_server_properties_impl_->SupportsSpdy(server); |
} |
@@ -334,13 +337,6 @@ void HttpServerPropertiesManager::UpdateCacheFromPrefsOnUI() { |
return; |
} |
- // TODO(rtenneti): Mark entries with an LRU sequence number (date of access?), |
- // and then truncate down deleting old stuff. |
- if (version != kVersionNumber && servers_dict->size() > 300) { |
- DVLOG(1) << "Size is too large. Clearing all properties."; |
- return; |
- } |
- |
// String is host/port pair of spdy server. |
scoped_ptr<StringVector> spdy_servers(new StringVector); |
scoped_ptr<net::SpdySettingsMap> spdy_settings_map( |
@@ -532,7 +528,8 @@ void HttpServerPropertiesManager::UpdatePrefsFromCacheOnIO( |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
base::ListValue* spdy_server_list = new base::ListValue; |
- http_server_properties_impl_->GetSpdyServerList(spdy_server_list); |
+ http_server_properties_impl_->GetSpdyServerList( |
+ spdy_server_list, kMaxSupportsSpdyServerHostsToPersist); |
net::SpdySettingsMap* spdy_settings_map = |
new net::SpdySettingsMap(kMaxSpdySettingsHostsToPersist); |
@@ -605,8 +602,6 @@ void HttpServerPropertiesManager::UpdatePrefsOnUI( |
net::PipelineCapabilityMap* pipeline_capability_map, |
const base::Closure& completion) { |
- // TODO(rtenneti): Fix ServerPrefMap to preserve MRU order of |
- // spdy_settings_map, alternate_protocol_map and pipeline_capability_map. |
typedef std::map<net::HostPortPair, ServerPref> ServerPrefMap; |
ServerPrefMap server_pref_map; |
@@ -692,7 +687,8 @@ void HttpServerPropertiesManager::UpdatePrefsOnUI( |
base::DictionaryValue* server_pref_dict = new base::DictionaryValue; |
// Save supports_spdy. |
- server_pref_dict->SetBoolean("supports_spdy", server_pref.supports_spdy); |
+ if (server_pref.supports_spdy) |
+ server_pref_dict->SetBoolean("supports_spdy", server_pref.supports_spdy); |
// Save SPDY settings. |
if (server_pref.settings_map) { |