diff --git a/lash.c b/lash.c index 0af669116..22e3c779e 100644 --- a/lash.c +++ b/lash.c @@ -1507,8 +1507,8 @@ static int busy_loop(FILE * input) #ifdef BB_FEATURE_CLEAN_UP void free_memory(void) { - if (cwd) { - free(cwd); + if (cwd && cwd!=unknown) { + free((char*)cwd); } if (local_pending_command) free(local_pending_command); diff --git a/shell/lash.c b/shell/lash.c index 0af669116..22e3c779e 100644 --- a/shell/lash.c +++ b/shell/lash.c @@ -1507,8 +1507,8 @@ static int busy_loop(FILE * input) #ifdef BB_FEATURE_CLEAN_UP void free_memory(void) { - if (cwd) { - free(cwd); + if (cwd && cwd!=unknown) { + free((char*)cwd); } if (local_pending_command) free(local_pending_command);