=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/less/charset.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- src/usr.bin/less/charset.c 2016/09/17 15:06:41 1.19 +++ src/usr.bin/less/charset.c 2017/01/04 16:27:01 1.20 @@ -37,7 +37,7 @@ if (*s == '*') { /* skip leading attribute if there */ s++; - if (strchr("dksu", *s) == NULL) { + if (*s == '\0' || strchr("dksu", *s) == NULL) { return (-1); } s++; @@ -57,7 +57,8 @@ if (seen) { return (-1); /* 2nd % format item! */ } - while (strchr(" '+-0#", *s) != NULL) { /* skip flags */ + /* skip flags */ + while (*s != '\0' && strchr(" '+-0#", *s) != NULL) { s++; } while (isdigit(*s)) { /* skip width */ @@ -78,7 +79,7 @@ s++; } - if (strchr("cCdiouxX", *s) == NULL) { + if (*s == '\0' || strchr("cCdiouxX", *s) == NULL) { /* bad or evil format character (%s, %n, etc.) */ return (-1); }