itest: fix result of string compares

The implementation of the string compare function of the "itest"
command was weird, as only the length of the shortest argument was
included in the compare, with the result that something like
"itest.s abd == abddef" would return TRUE.  Fix this.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
This commit is contained in:
Wolfgang Denk 2011-02-08 16:56:05 +01:00
parent 518075fc6a
commit cc22b795fb

View File

@ -94,16 +94,13 @@ static char * evalstr(char *s)
static int stringcomp(char *s, char *t, int op)
{
int n, p;
int p;
char *l, *r;
l = evalstr(s);
r = evalstr(t);
/* we'll do a compare based on the length of the shortest string */
n = min(strlen(l), strlen(r));
p = strncmp(l, r, n);
p = strcmp(l, r);
switch (op) {
case EQ: return (p == 0);
case NE: return (p != 0);