From 4c02aebe2fc3445fcfb8b13e0c06dd45e545cf5b Mon Sep 17 00:00:00 2001 From: "Andrey A. Chernov" Date: Sat, 8 Oct 1994 17:42:45 +0000 Subject: [PATCH] Sync with ctype.h (EOF, sign extention fixes) --- lib/libc/locale/nomacros.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/lib/libc/locale/nomacros.c b/lib/libc/locale/nomacros.c index 32ee40459590..90d1fe9cd995 100644 --- a/lib/libc/locale/nomacros.c +++ b/lib/libc/locale/nomacros.c @@ -1,3 +1,4 @@ +#include #include #include @@ -10,6 +11,10 @@ __istype(c, f) _BSD_RUNE_T_ c; unsigned long f; { + if (c == EOF) + return 0; + if (c < 0) + c = (unsigned char) c; return ((((c & _CRMASK) ? ___runetype(c) : _CurrentRuneLocale->runetype[c]) & f) ? 1 : 0); } @@ -19,6 +24,10 @@ __isctype(_BSD_RUNE_T_ c, unsigned long f) _BSD_RUNE_T_ c; unsigned long f; { + if (c == EOF) + return 0; + if (c < 0) + c = (unsigned char) c; return ((((c & _CRMASK) ? 0 : _DefaultRuneLocale.runetype[c]) & f) ? 1 : 0); } @@ -27,6 +36,10 @@ _BSD_RUNE_T_ toupper(c) _BSD_RUNE_T_ c; { + if (c == EOF) + return EOF; + if (c < 0) + c = (unsigned char) c; return ((c & _CRMASK) ? ___toupper(c) : _CurrentRuneLocale->mapupper[c]); } @@ -35,6 +48,10 @@ _BSD_RUNE_T_ tolower(c) _BSD_RUNE_T_ c; { + if (c == EOF) + return EOF; + if (c < 0) + c = (unsigned char) c; return ((c & _CRMASK) ? ___tolower(c) : _CurrentRuneLocale->maplower[c]); }