From dbe5dd5e2ac39e798fba25d186cd6b873e218fce Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Thu, 7 Feb 2019 12:58:13 +0100 Subject: [PATCH] Never let "localhost" get sent to a proxy. Also make "No proxy for" editable always when usable. --- application/basilisk/components/preferences/connection.js | 2 +- application/palemoon/components/preferences/connection.js | 2 +- netwerk/base/nsProtocolProxyService.cpp | 7 +++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/application/basilisk/components/preferences/connection.js b/application/basilisk/components/preferences/connection.js index f6b395a2dd..349139bed3 100644 --- a/application/basilisk/components/preferences/connection.js +++ b/application/basilisk/components/preferences/connection.js @@ -76,7 +76,7 @@ var gConnectionsDialog = { var autologinProxyPref = document.getElementById("signon.autologin.proxy"); autologinProxyPref.disabled = proxyTypePref.value == 0; var noProxiesPref = document.getElementById("network.proxy.no_proxies_on"); - noProxiesPref.disabled = proxyTypePref.value != 1; + noProxiesPref.disabled = proxyTypePref.value == 0; var autoconfigURLPref = document.getElementById("network.proxy.autoconfig_url"); autoconfigURLPref.disabled = proxyTypePref.value != 2; diff --git a/application/palemoon/components/preferences/connection.js b/application/palemoon/components/preferences/connection.js index c1dd1bb6d0..da038c925b 100644 --- a/application/palemoon/components/preferences/connection.js +++ b/application/palemoon/components/preferences/connection.js @@ -63,7 +63,7 @@ var gConnectionsDialog = { autologinProxyPref.disabled = proxyTypePref.value == 0; var noProxiesPref = document.getElementById("network.proxy.no_proxies_on"); - noProxiesPref.disabled = proxyTypePref.value != 1; + noProxiesPref.disabled = proxyTypePref.value == 0; var autoconfigURLPref = document.getElementById("network.proxy.autoconfig_url"); autoconfigURLPref.disabled = proxyTypePref.value != 2; diff --git a/netwerk/base/nsProtocolProxyService.cpp b/netwerk/base/nsProtocolProxyService.cpp index 26eca0e884..237a2a3bd3 100644 --- a/netwerk/base/nsProtocolProxyService.cpp +++ b/netwerk/base/nsProtocolProxyService.cpp @@ -1841,6 +1841,13 @@ nsProtocolProxyService::Resolve_Internal(nsIChannel *channel, if (mPACMan && mPACMan->IsPACURI(uri)) return NS_OK; + // If proxies are enabled and this host:port combo is supposed to use a + // proxy, check for a proxy. + if ((mProxyConfig == PROXYCONFIG_DIRECT) || + !CanUseProxy(uri, info.defaultPort)) { + return NS_OK; + } + bool mainThreadOnly; if (mSystemProxySettings && mProxyConfig == PROXYCONFIG_SYSTEM &&