aboutsummaryrefslogtreecommitdiff
path: root/lib/parsedate.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2006-10-17 21:32:56 +0000
committerDaniel Stenberg <daniel@haxx.se>2006-10-17 21:32:56 +0000
commit44d84ac1646cf04ccc2c1a736f3c9d1644ccacec (patch)
tree78c8960a291ba0a11548ab34e88a9a7b1bbcee3f /lib/parsedate.c
parent930f9bd5342e6d514f9ba5b1303762c100621965 (diff)
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.
Diffstat (limited to 'lib/parsedate.c')
-rw-r--r--lib/parsedate.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/parsedate.c b/lib/parsedate.c
index 37b4ddfe3..0bb6d0c5a 100644
--- a/lib/parsedate.c
+++ b/lib/parsedate.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
@@ -213,7 +213,7 @@ static int checktz(char *check)
static void skip(const char **date)
{
/* skip everything that aren't letters or digits */
- while(**date && !isalnum((int)**date))
+ while(**date && !ISALNUM(**date))
(*date)++;
}
@@ -256,7 +256,7 @@ static time_t Curl_parsedate(const char *date)
skip(&date);
- if(isalpha((int)*date)) {
+ if(ISALPHA(*date)) {
/* a name coming up */
char buf[32]="";
size_t len;
@@ -286,7 +286,7 @@ static time_t Curl_parsedate(const char *date)
date += len;
}
- else if(isdigit((int)*date)) {
+ else if(ISDIGIT(*date)) {
/* a digit */
int val;
char *end;