diff options
author | jkh <jkh@FreeBSD.org> | 1994-11-08 14:04:19 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1994-11-08 14:04:19 +0000 |
commit | f260055f86979cbd90f149bdb2611781c1d15417 (patch) | |
tree | b05f050ef892456ded6a7bf8e84dd1068982cc8e /sbin/sysinstall/exec.c | |
parent | b280c1d8315fe6bbf84cc89d909009a96980ec83 (diff) | |
download | FreeBSD-src-f260055f86979cbd90f149bdb2611781c1d15417.zip FreeBSD-src-f260055f86979cbd90f149bdb2611781c1d15417.tar.gz |
Detect that bininst has finished and go straight into the new system.
Reviewed by: phk
Diffstat (limited to 'sbin/sysinstall/exec.c')
-rw-r--r-- | sbin/sysinstall/exec.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sbin/sysinstall/exec.c b/sbin/sysinstall/exec.c index d1ec7f5..40b5eb0 100644 --- a/sbin/sysinstall/exec.c +++ b/sbin/sysinstall/exec.c @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $Id: exec.c,v 1.4 1994/10/26 05:40:59 phk Exp $ + * $Id: exec.c,v 1.5 1994/10/29 10:01:32 phk Exp $ * */ @@ -62,6 +62,7 @@ exec(int magic, char *cmd, char *args, ...) close(debug_fd); break; case 2: + case 3: close(debug_fd); default: break; @@ -72,7 +73,8 @@ exec(int magic, char *cmd, char *args, ...) while ((w = wait(&status)) != pid && w != -1) ; - + if (w == 20 && magic == 3) /* special case for bininst */ + execl("/sbin/init", "/sbin/init", 0); if (w == -1) Fatal("Child process %s terminated abnormally\n", cmd); return(status); |