diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2021-03-14 13:28:01 +0100 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2021-03-14 13:34:36 +0100 |
| commit | 20fa5aa70d2a5e599ea2604f51baa49c6e891ab3 (patch) | |
| tree | db5bc904bf8387e35c82a622abedf63c6512498a /src/userprog/process.c | |
| parent | f8b7ad12f3843134352efd9da7062f3db34283d6 (diff) | |
| download | pintos-20fa5aa70d2a5e599ea2604f51baa49c6e891ab3.tar.gz | |
check all pointers before dereferencing
Diffstat (limited to 'src/userprog/process.c')
| -rw-r--r-- | src/userprog/process.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/userprog/process.c b/src/userprog/process.c index fbf2f50..6170b53 100644 --- a/src/userprog/process.c +++ b/src/userprog/process.c @@ -145,6 +145,8 @@ process_wait (tid_t child_tid) sema_down (&pc->exit_sema); int exit_status = pc->exit_status; pc->exit_status = -1; + sema_up (&pc->exit_sema); // a bit of a hack + // the child is killed so we can read again if we want to return exit_status; } } |
