diff options
Diffstat (limited to 'shell/ash.c')
-rw-r--r-- | shell/ash.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/shell/ash.c b/shell/ash.c index f4d296289..aa2a93bca 100644 --- a/shell/ash.c +++ b/shell/ash.c | |||
@@ -4610,7 +4610,7 @@ getstatus(struct job *job) | |||
4610 | job->sigint = 1; | 4610 | job->sigint = 1; |
4611 | #endif | 4611 | #endif |
4612 | } | 4612 | } |
4613 | retval += 128; | 4613 | retval |= 128; |
4614 | } | 4614 | } |
4615 | TRACE(("getstatus: job %d, nproc %d, status 0x%x, retval 0x%x\n", | 4615 | TRACE(("getstatus: job %d, nproc %d, status 0x%x, retval 0x%x\n", |
4616 | jobno(job), job->nprocs, status, retval)); | 4616 | jobno(job), job->nprocs, status, retval)); |
@@ -4676,7 +4676,7 @@ waitcmd(int argc UNUSED_PARAM, char **argv) | |||
4676 | if (status != -1 && !WIFSTOPPED(status)) { | 4676 | if (status != -1 && !WIFSTOPPED(status)) { |
4677 | retval = WEXITSTATUS(status); | 4677 | retval = WEXITSTATUS(status); |
4678 | if (WIFSIGNALED(status)) | 4678 | if (WIFSIGNALED(status)) |
4679 | retval = WTERMSIG(status) + 128; | 4679 | retval = 128 | WTERMSIG(status); |
4680 | goto ret; | 4680 | goto ret; |
4681 | } | 4681 | } |
4682 | } | 4682 | } |
@@ -4711,7 +4711,7 @@ waitcmd(int argc UNUSED_PARAM, char **argv) | |||
4711 | ret: | 4711 | ret: |
4712 | return retval; | 4712 | return retval; |
4713 | sigout: | 4713 | sigout: |
4714 | retval = 128 + pending_sig; | 4714 | retval = 128 | pending_sig; |
4715 | return retval; | 4715 | return retval; |
4716 | } | 4716 | } |
4717 | 4717 | ||