From 9084f49286547cdd9043015b8c2088c1c7dc27bd Mon Sep 17 00:00:00 2001 From: Matthias Andree Date: Sun, 25 Sep 2005 10:34:35 +0000 Subject: Properly cast arguments of ctype is*()/to*() functions to unsigned char. svn path=/trunk/; revision=4324 --- strcasecmp.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'strcasecmp.c') diff --git a/strcasecmp.c b/strcasecmp.c index c1f3bbd8..76ab9be3 100644 --- a/strcasecmp.c +++ b/strcasecmp.c @@ -6,18 +6,18 @@ */ #include -strcasecmp(char *s1, char *s2) +int strcasecmp(char *s1, char *s2) { - while (toupper(*s1) == toupper(*s2++)) + while (toupper((unsigned char)*s1) == toupper((unsigned char)*s2++)) if (*s1++ == '\0') - return(0); - return(toupper(*s1) - toupper(*--s2)); + return 0; + return(toupper((unsigned char)*s1) - toupper((unsigned char)*--s2)); } -strncasecmp(char *s1, char *s2, register int n) +int strncasecmp(char *s1, char *s2, register int n) { - while (--n >= 0 && toupper(*s1) == toupper(*s2++)) - if (toupper(*s1++) == '\0') - return(0); - return(n < 0 ? 0 : toupper(*s1) - toupper(*--s2)); + while (--n >= 0 && toupper((unsigned char)*s1) == toupper((unsigned char)*s2++)) + if (*s1++ == '\0') + return 0; + return(n < 0 ? 0 : toupper((unsigned char)*s1) - toupper((unsigned char)*--s2)); } -- cgit v1.2.3