diff --git a/src/chars.c b/src/chars.c index de28d420..64a15e44 100644 --- a/src/chars.c +++ b/src/chars.c @@ -38,7 +38,7 @@ #endif /* This function is equivalent to isblank(). */ -bool is_blank_char(unsigned char c) +bool is_blank_char(unsigned int c) { return #ifdef HAVE_ISBLANK @@ -86,9 +86,9 @@ bool is_blank_wchar(wchar_t wc) /* This function is equivalent to iscntrl(), except in that it also * handles control characters with their high bits set. */ -bool is_cntrl_char(unsigned char c) +bool is_cntrl_char(unsigned int c) { - return (c < 32) || (127 <= c && c < 160); + return (0 <= c && c < 32) || (127 <= c && c < 160); } /* This function is equivalent to iscntrl() for multibyte characters, diff --git a/src/proto.h b/src/proto.h index 2e4c768e..6b6396da 100644 --- a/src/proto.h +++ b/src/proto.h @@ -151,12 +151,12 @@ extern char *homedir; /* Functions we want available. */ /* Public functions in chars.c. */ -bool is_blank_char(unsigned char c); +bool is_blank_char(unsigned int c); bool is_blank_mbchar(const char *c); #ifdef NANO_WIDE bool is_blank_wchar(wchar_t wc); #endif -bool is_cntrl_char(unsigned char c); +bool is_cntrl_char(unsigned int c); bool is_cntrl_mbchar(const char *c); #ifdef NANO_WIDE bool is_cntrl_wchar(wchar_t wc);