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)
diff --git a/common/cli_hush.c b/common/cli_hush.c
index 2b654b7..9607e93 100644
--- a/common/cli_hush.c
+++ b/common/cli_hush.c
@@ -3236,8 +3236,10 @@
#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 e136075..a4f0341 100644
--- a/test/command_ut.c
+++ b/test/command_ut.c
@@ -188,6 +188,9 @@
#endif
#endif
+ assert(run_command("", 0) == 0);
+ assert(run_command(" ", 0) == 0);
+
printf("%s: Everything went swimmingly\n", __func__);
return 0;
}