summaryrefslogtreecommitdiff
path: root/ext/SDBM_File/sdbm/dbe.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/SDBM_File/sdbm/dbe.c')
-rw-r--r--ext/SDBM_File/sdbm/dbe.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/SDBM_File/sdbm/dbe.c b/ext/SDBM_File/sdbm/dbe.c
index b6bc8deba8..9f44180f39 100644
--- a/ext/SDBM_File/sdbm/dbe.c
+++ b/ext/SDBM_File/sdbm/dbe.c
@@ -138,7 +138,7 @@ datum db;
putchar('"');
for (i = 0; i < db.dsize; i++) {
- if (isprint(db.dptr[i]))
+ if (isprint((unsigned char)db.dptr[i]))
putchar(db.dptr[i]);
else {
putchar('\\');
@@ -174,7 +174,10 @@ char *s;
*p = '\f';
else if (*s == 't')
*p = '\t';
- else if (isdigit(*s) && isdigit(*(s + 1)) && isdigit(*(s + 2))) {
+ else if (isdigit((unsigned char)*s)
+ && isdigit((unsigned char)*(s + 1))
+ && isdigit((unsigned char)*(s + 2)))
+ {
i = (*s++ - '0') << 6;
i |= (*s++ - '0') << 3;
i |= *s - '0';