summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSchumyHao <[email protected]>2015-11-13 00:56:50 +0800
committerSchumyHao <[email protected]>2015-11-13 00:56:50 +0800
commitf1e92c63f2fad4f186be65e39b4c59095202b646 (patch)
treeace57b4497d3f444cbb00e8df734a652f90ddfd6
parent856db6ead1da9233e4a3e48914f63f4ad6adeb33 (diff)
finsh: check echo_mode before print '\n' when excute msh command
Signed-off-by: SchumyHao <[email protected]>
-rw-r--r--components/finsh/shell.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/components/finsh/shell.c b/components/finsh/shell.c
index 8962a7333f..a04214b727 100644
--- a/components/finsh/shell.c
+++ b/components/finsh/shell.c
@@ -200,7 +200,8 @@ void finsh_run_line(struct finsh_parser *parser, const char *line)
{
const char *err_str;
- rt_kprintf("\n");
+ if(shell->echo_mode)
+ rt_kprintf("\n");
finsh_parser_run(parser, (unsigned char *)line);
/* compile node root */
@@ -489,7 +490,8 @@ void finsh_thread_entry(void *parameter)
#ifdef FINSH_USING_MSH
if (msh_is_used() == RT_TRUE)
{
- rt_kprintf("\n");
+ if (shell->echo_mode)
+ rt_kprintf("\n");
msh_exec(shell->line, shell->line_position);
}
else
@@ -500,7 +502,8 @@ void finsh_thread_entry(void *parameter)
shell->line[shell->line_position] = ';';
if (shell->line_position != 0) finsh_run_line(&shell->parser, shell->line);
- else rt_kprintf("\n");
+ else
+ if (shell->echo_mode) rt_kprintf("\n");
#endif
}