diff options
Diffstat (limited to 'ports/linux')
-rw-r--r-- | ports/linux/newclone/guts/clone.c | 5 | ||||
-rw-r--r-- | ports/linux/oldclone/guts/clone.c | 5 |
2 files changed, 4 insertions, 6 deletions
diff --git a/ports/linux/newclone/guts/clone.c b/ports/linux/newclone/guts/clone.c index b3400c7..4b65036 100644 --- a/ports/linux/newclone/guts/clone.c +++ b/ports/linux/newclone/guts/clone.c @@ -12,11 +12,10 @@ * undo it later. UGH! */ pseudo_debug(1, "client resetting for clone(2) call\n"); - if (!pseudo_get_value("PSEUDO_RELOADED")) { - pseudo_setupenv(); + pseudo_setupenv(); + if (!pseudo_get_value("PSEUDO_UNLOAD")) { pseudo_reinit_libpseudo(); } else { - pseudo_setupenv(); pseudo_dropenv(); } /* call the real syscall */ diff --git a/ports/linux/oldclone/guts/clone.c b/ports/linux/oldclone/guts/clone.c index 58ff4ad..e8b87e8 100644 --- a/ports/linux/oldclone/guts/clone.c +++ b/ports/linux/oldclone/guts/clone.c @@ -12,11 +12,10 @@ * undo it later. UGH! */ pseudo_debug(1, "client resetting for clone(2) call\n"); - if (!pseudo_get_value("PSEUDO_RELOADED")) { - pseudo_setupenv(); + pseudo_setupenv(); + if (!pseudo_get_value("PSEUDO_UNLOAD")) { pseudo_reinit_libpseudo(); } else { - pseudo_setupenv(); pseudo_dropenv(); } /* call the real syscall */ |