From 5bea288f6608e242c7d157ce28a6859bb37d6e20 Mon Sep 17 00:00:00 2001 From: Theo de Raadt Date: Sat, 27 Jul 1996 10:45:27 +0000 Subject: be very careful in case of signed chars --- lib/libc/stdlib/strtoul.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/libc/stdlib/strtoul.c') diff --git a/lib/libc/stdlib/strtoul.c b/lib/libc/stdlib/strtoul.c index 1522bec5845..9d45c5cb9e6 100644 --- a/lib/libc/stdlib/strtoul.c +++ b/lib/libc/stdlib/strtoul.c @@ -33,7 +33,7 @@ #if defined(LIBC_SCCS) && !defined(lint) /*static char *sccsid = "from: @(#)strtoul.c 5.3 (Berkeley) 2/23/91";*/ -static char *rcsid = "$Id: strtoul.c,v 1.2 1995/12/21 14:58:38 deraadt Exp $"; +static char *rcsid = "$Id: strtoul.c,v 1.3 1996/07/27 10:45:25 deraadt Exp $"; #endif /* LIBC_SCCS and not lint */ #include @@ -63,7 +63,7 @@ strtoul(nptr, endptr, base) */ s = nptr; do { - c = *s++; + c = (unsigned char) *s++; } while (isspace(c)); if (c == '-') { neg = 1; @@ -84,7 +84,7 @@ strtoul(nptr, endptr, base) cutoff = ULONG_MAX / (unsigned long)base; cutlim = ULONG_MAX % (unsigned long)base; - for (acc = 0, any = 0;; c = *s++) { + for (acc = 0, any = 0;; c = (unsigned char) *s++) { if (isdigit(c)) c -= '0'; else if (isalpha(c)) -- cgit v1.2.3