From: Denys Vlasenko Date: Fri, 30 Mar 2018 21:03:29 +0000 (+0200) Subject: ash: fix "char == CTLfoo" comparison signedness bug X-Git-Tag: 1_29_0~173 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=ac61f447040479f7a852ae2c1262915274496f49;p=oweals%2Fbusybox.git 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 --- diff --git a/shell/ash.c b/shell/ash.c index c957b001e..8fb32c1ae 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -7439,13 +7439,13 @@ hasmeta(const char *p) p = strpbrk(p, chars); if (!p) break; - switch ((unsigned char) *p) { + switch ((unsigned char)*p) { case CTLQUOTEMARK: for (;;) { p++; - if (*p == CTLQUOTEMARK) + if ((unsigned char)*p == CTLQUOTEMARK) break; - if (*p == CTLESC) + if ((unsigned char)*p == CTLESC) p++; if (*p == '\0') /* huh? */ return 0;