From 369c62119b9dd60db77fc28e8857ed9c4d498889 Mon Sep 17 00:00:00 2001 From: Michal Idziorek Date: Mon, 24 Nov 2014 01:54:47 +0100 Subject: problems with ENV --- kernel/syscalls.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'kernel/syscalls.c') diff --git a/kernel/syscalls.c b/kernel/syscalls.c index 4023dfe..b5422c5 100644 --- a/kernel/syscalls.c +++ b/kernel/syscalls.c @@ -195,6 +195,7 @@ int syscall_execve(char *name, char **argv, char **env) char *env1="PS1=$ "; char *env2="PATH=/bin"; char environstr[256]; + char **oldenviron=env; char **environ=0xf00001; @@ -227,10 +228,6 @@ int syscall_execve(char *name, char **argv, char **env) } environ[i]=NULL; - log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"duplicate env: %s (0x%08X)",environ[0],environ[0]); - log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"duplicate env: %s (0x%08X)",environ[1],environ[1]); - log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"duplicate env: %s (0x%08X)",environ[2],environ[2]); - } @@ -399,6 +396,13 @@ int syscall_exit(int ret, char **env, int none2) log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"exit (ret=%d) (env=0x%08X)", ret, env); #endif + int i=0; + while(env[i]!=NULL) + { + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"envvar %s (0x%08X)\n" ,env[i],env[i]); + i++; + } + static char *argv[]={"shell","--silent",NULL}; syscall_execve("/bin/foolshell",argv,env); // start shell } -- cgit v1.2.3