diff options
author | Frans Kaashoek <[email protected]> | 2019-09-10 12:30:10 -0400 |
---|---|---|
committer | Frans Kaashoek <[email protected]> | 2019-09-10 12:30:10 -0400 |
commit | 7e6c37e67e6da62e02089fc3292569103b7e94b3 (patch) | |
tree | 8b3f2e762f1f0a32a4641d240d30b155af6ab34a /user/init.c | |
parent | 035cca95fe87c67ee1e33b9edfb2d87e24476fa8 (diff) | |
download | xv6-labs-7e6c37e67e6da62e02089fc3292569103b7e94b3.tar.gz xv6-labs-7e6c37e67e6da62e02089fc3292569103b7e94b3.tar.bz2 xv6-labs-7e6c37e67e6da62e02089fc3292569103b7e94b3.zip |
Support exit status for exit/wait
One test case for returning a exit status
Passes usertests, but haven't used it to simplify tests
Diffstat (limited to 'user/init.c')
-rw-r--r-- | user/init.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/user/init.c b/user/init.c index 01bb445..e4e0316 100644 --- a/user/init.c +++ b/user/init.c @@ -24,14 +24,14 @@ main(void) pid = fork(); if(pid < 0){ printf("init: fork failed\n"); - exit(); + exit(-1); } if(pid == 0){ exec("sh", argv); printf("init: exec sh failed\n"); - exit(); + exit(-1); } - while((wpid=wait()) >= 0 && wpid != pid){ + while((wpid=wait(0)) >= 0 && wpid != pid){ //printf("zombie!\n"); } } |