get_proxy() is using "http://" which fools get_proxies_by_url() into thinking

the empty servername matches the unspecified (and empty) directhost
  (when no directhosts are specified) which messes up the proxy code.
Fixed.
This commit is contained in:
Joseph Lee 2003-05-14 03:32:42 +00:00
parent 81d00c8bd6
commit 499d5a095f

View File

@ -449,11 +449,13 @@ get_proxies_for_url(const URLSpec &url, pvector<URLSpec> &proxies) const {
// First, check if the hostname matches any listed in direct_hosts. // First, check if the hostname matches any listed in direct_hosts.
string hostname = url.get_server(); string hostname = url.get_server();
DirectHosts::const_iterator si; if (!hostname.empty()) { // skip if hostname is just an empty 'http://' scheme
for (si = _direct_hosts.begin(); si != _direct_hosts.end(); ++si) { DirectHosts::const_iterator si;
if ((*si).matches(hostname)) { for (si = _direct_hosts.begin(); si != _direct_hosts.end(); ++si) {
if ((*si).matches(hostname)) {
// It matches, so don't use any proxies. // It matches, so don't use any proxies.
return; return;
}
} }
} }