summaryrefslogtreecommitdiffstats
path: root/net/proxy/proxy_config_service_win.cc
diff options
context:
space:
mode:
Diffstat (limited to 'net/proxy/proxy_config_service_win.cc')
-rw-r--r--net/proxy/proxy_config_service_win.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/proxy/proxy_config_service_win.cc b/net/proxy/proxy_config_service_win.cc
index ab02c66..30c4adb 100644
--- a/net/proxy/proxy_config_service_win.cc
+++ b/net/proxy/proxy_config_service_win.cc
@@ -44,8 +44,11 @@ void ProxyConfigServiceWin::SetFromIEConfig(
const WINHTTP_CURRENT_USER_IE_PROXY_CONFIG& ie_config) {
if (ie_config.fAutoDetect)
config->auto_detect = true;
- if (ie_config.lpszProxy)
- config->proxy_rules = WideToASCII(ie_config.lpszProxy);
+ if (ie_config.lpszProxy) {
+ // lpszProxy may be a single proxy, or a proxy per scheme. The format
+ // is compatible with ProxyConfig::ProxyRules's string format.
+ config->proxy_rules.ParseFromString(WideToASCII(ie_config.lpszProxy));
+ }
if (ie_config.lpszProxyBypass) {
std::string proxy_bypass = WideToASCII(ie_config.lpszProxyBypass);