summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRabin Vincent <rabin@rab.in>2014-10-29 23:21:39 +0100
committerTom Rini <trini@ti.com>2014-11-07 16:27:06 -0500
commit484408fb5194586b6ba6251f15cbae0c445c3bf5 (patch)
tree3e32c915a86efd1292711a8c0b3598301884ec53
parent7dbcb76e77361970f7223c1bca4fdc9bb0436a08 (diff)
downloadu-boot-484408fb5194586b6ba6251f15cbae0c445c3bf5.tar.gz
hush: return consistent codes from run_command()
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)
-rw-r--r--common/cli_hush.c4
-rw-r--r--test/command_ut.c3
2 files changed, 6 insertions, 1 deletions
diff --git a/common/cli_hush.c b/common/cli_hush.c
index 2b654b754f..9607e93d51 100644
--- a/common/cli_hush.c
+++ b/common/cli_hush.c
@@ -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);
diff --git a/test/command_ut.c b/test/command_ut.c
index e136075541..a4f034179b 100644
--- a/test/command_ut.c
+++ b/test/command_ut.c
@@ -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;
}