summaryrefslogtreecommitdiffstats
path: root/lib/libedit
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>1996-08-11 19:20:30 +0000
committerache <ache@FreeBSD.org>1996-08-11 19:20:30 +0000
commit3c7673013285ac763e247767e237240275819280 (patch)
tree9a2a7c594f9c5a81136b03380da55a891b29c1aa /lib/libedit
parent8aa8a81b2a0e28709d18a8cb2d85b80f6329e2c1 (diff)
downloadFreeBSD-src-3c7673013285ac763e247767e237240275819280.zip
FreeBSD-src-3c7673013285ac763e247767e237240275819280.tar.gz
8bit cleaness (ctype) fixes
Diffstat (limited to 'lib/libedit')
-rw-r--r--lib/libedit/chared.c4
-rw-r--r--lib/libedit/common.c6
-rw-r--r--lib/libedit/emacs.c18
-rw-r--r--lib/libedit/key.c2
-rw-r--r--lib/libedit/refresh.c2
-rw-r--r--lib/libedit/vi.c2
6 files changed, 18 insertions, 16 deletions
diff --git a/lib/libedit/chared.c b/lib/libedit/chared.c
index 62e2f6a..b8acf51 100644
--- a/lib/libedit/chared.c
+++ b/lib/libedit/chared.c
@@ -148,7 +148,7 @@ protected int
ce__isword(p)
int p;
{
- return isalpha(p) || isdigit(p) || strchr("*?_-.[]~=", p) != NULL;
+ return isalpha((unsigned char) p) || isdigit((unsigned char) p) || strchr("*?_-.[]~=", p) != NULL;
}
@@ -159,7 +159,7 @@ protected int
cv__isword(p)
int p;
{
- return !isspace(p);
+ return !isspace((unsigned char) p);
}
diff --git a/lib/libedit/common.c b/lib/libedit/common.c
index c8be2b7..a321c52 100644
--- a/lib/libedit/common.c
+++ b/lib/libedit/common.c
@@ -256,7 +256,7 @@ ed_move_to_beg(el, c)
if (el->el_map.type == MAP_VI) {
/* We want FIRST non space character */
- while (isspace(*el->el_line.cursor))
+ while (isspace((unsigned char) *el->el_line.cursor))
el->el_line.cursor++;
if (el->el_chared.c_vcmd.action & DELETE) {
cv_delfini(el);
@@ -408,7 +408,7 @@ ed_digit(el, c)
EditLine *el;
int c;
{
- if (!isdigit(c))
+ if (!isdigit((unsigned char) c))
return CC_ERROR;
if (el->el_state.doingarg) {
@@ -451,7 +451,7 @@ ed_argument_digit(el, c)
EditLine *el;
register int c;
{
- if (!isdigit(c))
+ if (!isdigit((unsigned char) c))
return CC_ERROR;
if (el->el_state.doingarg) {
diff --git a/lib/libedit/emacs.c b/lib/libedit/emacs.c
index a3a1975..d84c360 100644
--- a/lib/libedit/emacs.c
+++ b/lib/libedit/emacs.c
@@ -298,8 +298,8 @@ em_upper_case(el, c)
el->el_state.argument, ce__isword);
for (cp = el->el_line.cursor; cp < ep; cp++)
- if (islower(*cp))
- *cp = toupper(*cp);
+ if (islower((unsigned char)*cp))
+ *cp = toupper((unsigned char)*cp);
el->el_line.cursor = ep;
if (el->el_line.cursor > el->el_line.lastchar)
@@ -324,16 +324,16 @@ em_capitol_case(el, c)
el->el_state.argument, ce__isword);
for (cp = el->el_line.cursor; cp < ep; cp++) {
- if (isalpha(*cp)) {
- if (islower(*cp))
- *cp = toupper(*cp);
+ if (isalpha((unsigned char)*cp)) {
+ if (islower((unsigned char)*cp))
+ *cp = toupper((unsigned char)*cp);
cp++;
break;
}
}
for (; cp < ep; cp++)
- if (isupper(*cp))
- *cp = tolower(*cp);
+ if (isupper((unsigned char)*cp))
+ *cp = tolower((unsigned char)*cp);
el->el_line.cursor = ep;
if (el->el_line.cursor > el->el_line.lastchar)
@@ -357,8 +357,8 @@ em_lower_case(el, c)
el->el_state.argument, ce__isword);
for (cp = el->el_line.cursor; cp < ep; cp++)
- if (isupper(*cp))
- *cp = tolower(*cp);
+ if (isupper((unsigned char)*cp))
+ *cp = tolower((unsigned char)*cp);
el->el_line.cursor = ep;
if (el->el_line.cursor > el->el_line.lastchar)
diff --git a/lib/libedit/key.c b/lib/libedit/key.c
index 302b6bd..a84f413 100644
--- a/lib/libedit/key.c
+++ b/lib/libedit/key.c
@@ -640,6 +640,8 @@ key__decode_char(buf, cnt, ch)
char *buf;
int cnt, ch;
{
+ ch &= 0xFF;
+
if (ch == 0) {
buf[cnt++] = '^';
buf[cnt] = '@';
diff --git a/lib/libedit/refresh.c b/lib/libedit/refresh.c
index 6ad5522..6fc8a56 100644
--- a/lib/libedit/refresh.c
+++ b/lib/libedit/refresh.c
@@ -43,7 +43,6 @@ static char sccsid[] = "@(#)refresh.c 8.1 (Berkeley) 6/4/93";
*/
#include "sys.h"
#include <stdio.h>
-#include <ctype.h>
#include <unistd.h>
#include <string.h>
@@ -98,6 +97,7 @@ re_addc(el, c)
int c;
{
c &= 0xFF;
+
if (isprint(c)) {
re_putc(el, c);
return;
diff --git a/lib/libedit/vi.c b/lib/libedit/vi.c
index 1a46780..a9e6111 100644
--- a/lib/libedit/vi.c
+++ b/lib/libedit/vi.c
@@ -277,7 +277,7 @@ vi_change_case(el, c)
int c;
{
if (el->el_line.cursor < el->el_line.lastchar) {
- c = *el->el_line.cursor;
+ c = *el->el_line.cursor & 0xFF;
if (isupper(c))
*el->el_line.cursor++ = tolower(c);
else if (islower(c))
OpenPOWER on IntegriCloud