From 5b27fbe990d868441452c474e5b14e94f8bc8335 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sat, 24 Mar 2007 14:06:51 +0000 Subject: dc: use common_bufsiz1 for evaluation stack msh: fix "underscore bug" (a_b=1111 didn't work) dnsd: openlog(), so that applet's name is logged --- shell/msh.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'shell') diff --git a/shell/msh.c b/shell/msh.c index 41f4cc6..d9dd3ef 100644 --- a/shell/msh.c +++ b/shell/msh.c @@ -1191,23 +1191,22 @@ static int isassign(const char *s) unsigned char c; DBGPRINTF7(("ISASSIGN: enter, s=%s\n", s)); - /* no isalpha() - we shouldn't use locale */ c = *s; - if (c != '_' - && (unsigned)((c|0x20) - 'a') > 25 /* not letter */ - ) { + /* no isalpha() - we shouldn't use locale */ + /* c | 0x20 - lowercase (Latin) letters */ + if (c != '_' && (unsigned)((c|0x20) - 'a') > 25) + /* not letter */ return 0; - } + while (1) { c = *++s; - if (c == '\0') - return 0; if (c == '=') return 1; - c |= 0x20; /* lowercase letters, doesn't affect numbers */ + if (c == '\0') + return 0; if (c != '_' && (unsigned)(c - '0') > 9 /* not number */ - && (unsigned)(c - 'a') > 25 /* not letter */ + && (unsigned)((c|0x20) - 'a') > 25 /* not letter */ ) { return 0; } -- cgit v1.1