hush: return consistent codes from run_command()
authorRabin Vincent <rabin@rab.in>
Wed, 29 Oct 2014 22:21:39 +0000 (23:21 +0100)
committerTom Rini <trini@ti.com>
Fri, 7 Nov 2014 21:27:06 +0000 (16:27 -0500)
Attempting to run:
 - an empty string
 - a string with just spaces

returns different error codes, 1 for the empty string and 0
for the string with just spaces.  Make both of them return
0 for consistency.

Signed-off-by: Rabin Vincent <rabin@rab.in>
Acked-by: Simon Glass <sjg@chromium.org)
common/cli_hush.c
test/command_ut.c

index 2b654b754f5d5423f639014cc8f260fef1ee1871..9607e93d513b37bfbe0c950f0317e3896a361acd 100644 (file)
@@ -3236,8 +3236,10 @@ int parse_string_outer(const char *s, int flag)
 #ifdef __U_BOOT__
        char *p = NULL;
        int rcode;
-       if ( !s || !*s)
+       if (!s)
                return 1;
+       if (!*s)
+               return 0;
        if (!(p = strchr(s, '\n')) || *++p) {
                p = xmalloc(strlen(s) + 2);
                strcpy(p, s);
index e136075541b76c4a21096f4619a6ea0f7a180f69..a4f034179b0fc1cd881836d852ce700503c61c58 100644 (file)
@@ -188,6 +188,9 @@ static int do_ut_cmd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 #endif
 #endif
 
+       assert(run_command("", 0) == 0);
+       assert(run_command(" ", 0) == 0);
+
        printf("%s: Everything went swimmingly\n", __func__);
        return 0;
 }