summaryrefslogtreecommitdiff
path: root/components/finsh/msh.c
diff options
context:
space:
mode:
authorbernard <[email protected]>2014-04-08 15:49:16 +0800
committerbernard <[email protected]>2014-04-08 15:49:16 +0800
commitb2f35dcf3f930087104e2bb36845d50a6931a15d (patch)
tree40e1e3389ceebb6e18919ce0750a880cacb6e9cc /components/finsh/msh.c
parent412d548f9cfb3bb89efe2828013eeb3e264fc0c1 (diff)
Merge remote-tracking branch 'origin/master' into stable-v1.2.xv1.2.1
Diffstat (limited to 'components/finsh/msh.c')
-rw-r--r--components/finsh/msh.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/components/finsh/msh.c b/components/finsh/msh.c
index 1492e017e1..49a5d23591 100644
--- a/components/finsh/msh.c
+++ b/components/finsh/msh.c
@@ -180,7 +180,7 @@ static cmd_function_t msh_get_cmd(char *cmd, int size)
#if defined(RT_USING_MODULE) && defined(RT_USING_DFS)
/* Return 0 on module executed. Other value indicate error.
*/
-int msh_exec_module(char* cmd_line, int size)
+int msh_exec_module(const char* cmd_line, int size)
{
int ret;
int fd = -1;
@@ -248,6 +248,11 @@ int msh_exec_module(char* cmd_line, int size)
rt_free(pg_name);
return ret;
}
+
+int system(const char *command)
+{
+ return msh_exec_module(command, rt_strlen(command));
+}
#endif
static int _msh_exec_cmd(char* cmd, rt_size_t length, int *retp)
@@ -346,8 +351,8 @@ static int str_common(const char *str1, const char *str2)
#ifdef RT_USING_DFS
void msh_auto_complete_path(char *path)
{
- DIR* dir;
- struct dirent *dirent;
+ DIR* dir = RT_NULL;
+ struct dirent *dirent = RT_NULL;
char *full_path, *ptr, *index;
full_path = (char*)rt_malloc(256);