diff options
Diffstat (limited to 'sim/riscv')
-rw-r--r-- | sim/riscv/interp.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sim/riscv/interp.c b/sim/riscv/interp.c index f94a842..7ecdd55 100644 --- a/sim/riscv/interp.c +++ b/sim/riscv/interp.c @@ -153,6 +153,12 @@ sim_create_inferior (SIM_DESC sd, struct bfd *abfd, STATE_PROG_ARGV (sd) = dupargv (argv); } + if (STATE_PROG_ENVP (sd) != env) + { + freeargv (STATE_PROG_ENVP (sd)); + STATE_PROG_ENVP (sd) = dupargv (env); + } + initialize_env (sd, (void *)argv, (void *)env); return SIM_RC_OK; |