ash: fix "char == CTLfoo" comparison signedness bug

It usually does not bite since bbox forces -funsigned-char build.
But for some reason void linux people disabled that.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2018-03-30 23:03:29 +02:00
parent 60fb98e51d
commit ac61f44704

View File

@ -7439,13 +7439,13 @@ hasmeta(const char *p)
p = strpbrk(p, chars); p = strpbrk(p, chars);
if (!p) if (!p)
break; break;
switch ((unsigned char) *p) { switch ((unsigned char)*p) {
case CTLQUOTEMARK: case CTLQUOTEMARK:
for (;;) { for (;;) {
p++; p++;
if (*p == CTLQUOTEMARK) if ((unsigned char)*p == CTLQUOTEMARK)
break; break;
if (*p == CTLESC) if ((unsigned char)*p == CTLESC)
p++; p++;
if (*p == '\0') /* huh? */ if (*p == '\0') /* huh? */
return 0; return 0;