diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-01 19:59:42 +0400 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-01 19:59:42 +0400 |
commit | 82604e973085f91f1b99cacea08963d0d1468084 (patch) | |
tree | 2de05bb2a6943ca6be0cc46f36e5fb07099aef40 /util-linux | |
parent | b111917972c1398ef96ef2d388c6c4ba57a8e9f7 (diff) |
revert last two commits. vfork cannot be used in subroutine,
it trashes stack on return
Diffstat (limited to 'util-linux')
-rw-r--r-- | util-linux/mount.c | 1 | ||||
-rw-r--r-- | util-linux/script.c | 5 |
2 files changed, 4 insertions, 2 deletions
diff --git a/util-linux/mount.c b/util-linux/mount.c index 664d24fd8..3b77af728 100644 --- a/util-linux/mount.c +++ b/util-linux/mount.c @@ -890,7 +890,6 @@ get_mountport(struct pmap *pm_mnt, } #if BB_MMU -/* Unlike bb_daemonize(), parent does NOT exit here, but returns 0 */ static int daemonize(void) { int fd; diff --git a/util-linux/script.c b/util-linux/script.c index a6c1ab88a..e70294e6c 100644 --- a/util-linux/script.c +++ b/util-linux/script.c @@ -87,7 +87,10 @@ int script_main(int argc ATTRIBUTE_UNUSED, char **argv) /* TODO: SIGWINCH? pass window size changes down to slave? */ - child_pid = xvfork(); + child_pid = vfork(); + if (child_pid < 0) { + bb_perror_msg_and_die("vfork"); + } if (child_pid) { /* parent */ |