Index: components/data_reduction_proxy/browser/data_reduction_proxy_config_service.cc |
diff --git a/components/data_reduction_proxy/browser/data_reduction_proxy_config_service.cc b/components/data_reduction_proxy/browser/data_reduction_proxy_config_service.cc |
index 84b2e5681e59f6dc54523f9de7df9b6a5b38fd78..921a2e4b47e5bc4549ef6bae411c1dffc017341e 100644 |
--- a/components/data_reduction_proxy/browser/data_reduction_proxy_config_service.cc |
+++ b/components/data_reduction_proxy/browser/data_reduction_proxy_config_service.cc |
@@ -130,7 +130,8 @@ void DataReductionProxyConfigTracker::Enable( |
bool primary_restricted, |
bool fallback_restricted, |
const std::string& primary_origin, |
- const std::string& fallback_origin) { |
+ const std::string& fallback_origin, |
+ const std::string& ssl_origin) { |
std::vector<std::string> proxies; |
if (!primary_restricted) { |
@@ -151,9 +152,14 @@ void DataReductionProxyConfigTracker::Enable( |
return; |
} |
+ std::string trimmed_ssl; |
+ base::TrimString(ssl_origin, "/", &trimmed_ssl); |
+ |
+ std::string server = "http=" + JoinString(proxies, ",") + ",direct://;" |
+ + (ssl_origin.empty() ? "" : ("https=" + ssl_origin + ",direct://;")); |
+ |
net::ProxyConfig config; |
- config.proxy_rules().ParseFromString( |
- "http=" + JoinString(proxies, ",") + ",direct://;"); |
+ config.proxy_rules().ParseFromString(server); |
config.proxy_rules().bypass_rules.ParseFromString( |
JoinString(bypass_rules_, ", ")); |
UpdateProxyConfigOnIOThread(true, config); |