Hans Leidekker : winhttp: Ignore empty proxy strings read from the environment.
Alexandre Julliard
julliard at winehq.org
Wed May 23 15:52:04 CDT 2018
Module: wine
Branch: master
Commit: 2752da05db370a9b438ea8c28d4c77550befd6b1
URL: https://source.winehq.org/git/wine.git/?a=commit;h=2752da05db370a9b438ea8c28d4c77550befd6b1
Author: Hans Leidekker <hans at codeweavers.com>
Date: Wed May 23 11:36:44 2018 +0200
winhttp: Ignore empty proxy strings read from the environment.
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
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 c878d68..e2b91fa 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));
}
}
}
More information about the wine-cvs
mailing list