From 44d84ac1646cf04ccc2c1a736f3c9d1644ccacec Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 17 Oct 2006 21:32:56 +0000 Subject: Avoid typecasting a signed char to an int when using is*() functions, as that could very well cause a negate number get passed in and thus cause reading outside of the array usually used for this purpose. We avoid this by using the uppercase macro versions introduced just now that does some extra crazy typecasts to avoid byte codes > 127 to cause negative int values. --- lib/url.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/url.c') diff --git a/lib/url.c b/lib/url.c index 312862dcb..d23660515 100644 --- a/lib/url.c +++ b/lib/url.c @@ -3252,7 +3252,7 @@ static CURLcode CreateConnection(struct SessionHandle *data, /* detect and extract RFC2732-style IPv6-addresses */ if(*proxyptr == '[') { char *ptr = ++proxyptr; /* advance beyond the initial bracket */ - while(*ptr && (isxdigit((int)*ptr) || (*ptr == ':'))) + while(*ptr && (ISXDIGIT(*ptr) || (*ptr == ':'))) ptr++; if(*ptr == ']') { /* yeps, it ended nicely with a bracket as well */ -- cgit v1.2.3