sandbox: init cli for -c
authorRabin Vincent <rabin@rab.in>
Wed, 29 Oct 2014 22:21:38 +0000 (23:21 +0100)
committerTom Rini <trini@ti.com>
Fri, 7 Nov 2014 21:27:05 +0000 (16:27 -0500)
sandbox crashes if a variable is set in the -c command, because
hush's top_vars is not allocated.  Call cli_init() from sandbox
to ensure this is done before we execute the -c command.

 $ ./u-boot -c 'a=1'
 ...
 Segmentation fault (core dumped)

Signed-off-by: Rabin Vincent <rabin@rab.in>
Acked-by: Simon Glass <sjg@chromium.org)
Tested-by: Simon Glass <sjg@chromium.org)
arch/sandbox/cpu/start.c

index b3d70515dc8da0f28ade44c218a45d0fd77dd0df..53a99ae71b1361131637b0827a8b2afb142273e7 100644 (file)
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <os.h>
+#include <cli.h>
 #include <asm/getopt.h>
 #include <asm/io.h>
 #include <asm/sections.h>
@@ -76,6 +77,8 @@ int sandbox_main_loop_init(void)
 
        /* Execute command if required */
        if (state->cmd) {
+               cli_init();
+
                run_command_list(state->cmd, -1, 0);
                if (!state->interactive)
                        os_exit(state->exit_type);