Signed-off-by: Hans Leidekker hans@codeweavers.com --- dlls/winhttp/session.c | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-)
diff --git a/dlls/winhttp/session.c b/dlls/winhttp/session.c index c878d68eb3..e2b91fa513 100644 --- a/dlls/winhttp/session.c +++ b/dlls/winhttp/session.c @@ -1597,29 +1597,21 @@ BOOL WINAPI WinHttpGetDefaultProxyConfiguration( WINHTTP_PROXY_INFO *info ) } if (!got_from_reg && (envproxy = getenv( "http_proxy" ))) { - char *colon, *http_proxy; + char *colon, *http_proxy = NULL;
- if ((colon = strchr( envproxy, ':' ))) + if (!(colon = strchr( envproxy, ':' ))) http_proxy = envproxy; + else { if (*(colon + 1) == '/' && *(colon + 2) == '/') { - static const char http[] = "http://"; - /* It's a scheme, check that it's http */ - if (!strncmp( envproxy, http, strlen( http ) )) - http_proxy = envproxy + strlen( http ); - else - { - WARN("unsupported scheme in $http_proxy: %s\n", envproxy); - http_proxy = NULL; - } + if (!strncmp( envproxy, "http://", 7 )) http_proxy = envproxy + 7; + else WARN("unsupported scheme in $http_proxy: %s\n", envproxy); } - else - http_proxy = envproxy; + else http_proxy = envproxy; } - else - http_proxy = envproxy; - if (http_proxy) + + if (http_proxy && http_proxy[0]) { WCHAR *http_proxyW; int len; @@ -1632,8 +1624,7 @@ BOOL WINAPI WinHttpGetDefaultProxyConfiguration( WINHTTP_PROXY_INFO *info ) info->dwAccessType = WINHTTP_ACCESS_TYPE_NAMED_PROXY; info->lpszProxy = http_proxyW; info->lpszProxyBypass = NULL; - TRACE("http proxy (from environment) = %s\n", - debugstr_w(info->lpszProxy)); + TRACE("http proxy (from environment) = %s\n", debugstr_w(info->lpszProxy)); } } }