diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2018-05-19 02:39:56 +0800 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2018-05-28 17:12:23 +0800 |
commit | e94a964e7dd03d0dd6923d7fc62bc46bd4431189 (patch) | |
tree | 051eb42129c550d4bed1b94ef8dab9d8e8569395 /src/error.c | |
parent | eval: Replace with listsetvar with mklocal/setvareq (diff) | |
download | dash-e94a964e7dd03d0dd6923d7fc62bc46bd4431189.tar.gz dash-e94a964e7dd03d0dd6923d7fc62bc46bd4431189.zip |
eval: Add vfork support
This patch adds basic vfork support for the case of a simple command. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to '')
-rw-r--r-- | src/error.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/error.c b/src/error.c index f9ea919..728ff88 100644 --- a/src/error.c +++ b/src/error.c @@ -43,6 +43,7 @@ #include <stdio.h> #include <string.h> +#include "jobs.h" #include "shell.h" #include "main.h" #include "options.h" @@ -81,6 +82,10 @@ exraise(int e) if (handler == NULL) abort(); #endif + + if (vforked) + _exit(exitstatus); + INTOFF; exception = e; |