aboutsummaryrefslogtreecommitdiffstats
path: root/ports/common/guts
diff options
context:
space:
mode:
Diffstat (limited to 'ports/common/guts')
-rw-r--r--ports/common/guts/execv.c7
-rw-r--r--ports/common/guts/execve.c7
-rw-r--r--ports/common/guts/execvp.c7
-rw-r--r--ports/common/guts/fork.c5
4 files changed, 8 insertions, 18 deletions
diff --git a/ports/common/guts/execv.c b/ports/common/guts/execv.c
index 15ad51e..763e1f9 100644
--- a/ports/common/guts/execv.c
+++ b/ports/common/guts/execv.c
@@ -18,12 +18,9 @@
free(path_guess);
}
- if (!pseudo_get_value("PSEUDO_RELOADED"))
- pseudo_setupenv();
- else {
- pseudo_setupenv();
+ pseudo_setupenv();
+ if (pseudo_get_value("PSEUDO_UNLOAD"))
pseudo_dropenv();
- }
/* if exec() fails, we may end up taking signals unexpectedly...
* not much we can do about that.
diff --git a/ports/common/guts/execve.c b/ports/common/guts/execve.c
index a47b9a7..a003657 100644
--- a/ports/common/guts/execve.c
+++ b/ports/common/guts/execve.c
@@ -19,12 +19,9 @@
free(path_guess);
}
- if (!pseudo_get_value("PSEUDO_RELOADED"))
- new_environ = pseudo_setupenvp(envp);
- else {
- new_environ = pseudo_setupenvp(envp);
+ new_environ = pseudo_setupenvp(envp);
+ if (pseudo_get_value("PSEUDO_UNLOAD"))
new_environ = pseudo_dropenvp(new_environ);
- }
/* if exec() fails, we may end up taking signals unexpectedly...
* not much we can do about that.
diff --git a/ports/common/guts/execvp.c b/ports/common/guts/execvp.c
index 419f41b..5e75be7 100644
--- a/ports/common/guts/execvp.c
+++ b/ports/common/guts/execvp.c
@@ -19,12 +19,9 @@
free(path_guess);
}
- if (!pseudo_get_value("PSEUDO_RELOADED"))
- pseudo_setupenv();
- else {
- pseudo_setupenv();
+ pseudo_setupenv();
+ if (pseudo_get_value("PSEUDO_UNLOAD"))
pseudo_dropenv();
- }
/* if exec() fails, we may end up taking signals unexpectedly...
* not much we can do about that.
diff --git a/ports/common/guts/fork.c b/ports/common/guts/fork.c
index 76cac6f..df8abd7 100644
--- a/ports/common/guts/fork.c
+++ b/ports/common/guts/fork.c
@@ -11,11 +11,10 @@
* pseudo in the child process
*/
if (rc == 0) {
- if (!pseudo_get_value("PSEUDO_RELOADED")) {
- pseudo_setupenv();
+ pseudo_setupenv();
+ if (!pseudo_get_value("PSEUDO_UNLOAD")) {
pseudo_reinit_libpseudo();
} else {
- pseudo_setupenv();
pseudo_dropenv();
}
}