Allow newlines within command environment vars
Any environment variable can hold commands to be executed by the 'run' command. The environment variables preboot, bootcmd and menucmd have special code for triggering execution in certain circumstances. We adjust these calls to use run_command_list() instead of run_command(). This change permits these variables to have embedded newlines so that they work the same as the 'source' command. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
d51004a832
commit
3a8a02beb7
|
@ -334,7 +334,7 @@ void main_loop (void)
|
|||
int prev = disable_ctrlc(1); /* disable Control C checking */
|
||||
# endif
|
||||
|
||||
run_command(p, 0);
|
||||
run_command_list(p, -1, 0);
|
||||
|
||||
# ifdef CONFIG_AUTOBOOT_KEYED
|
||||
disable_ctrlc(prev); /* restore Control C checking */
|
||||
|
@ -382,7 +382,7 @@ void main_loop (void)
|
|||
int prev = disable_ctrlc(1); /* disable Control C checking */
|
||||
# endif
|
||||
|
||||
run_command(s, 0);
|
||||
run_command_list(s, -1, 0);
|
||||
|
||||
# ifdef CONFIG_AUTOBOOT_KEYED
|
||||
disable_ctrlc(prev); /* restore Control C checking */
|
||||
|
@ -393,7 +393,7 @@ void main_loop (void)
|
|||
if (menukey == CONFIG_MENUKEY) {
|
||||
s = getenv("menucmd");
|
||||
if (s)
|
||||
run_command(s, 0);
|
||||
run_command_list(s, -1, 0);
|
||||
}
|
||||
#endif /* CONFIG_MENUKEY */
|
||||
#endif /* CONFIG_BOOTDELAY */
|
||||
|
|
Loading…
Reference in New Issue