diff options
author | Axel Beckert <abe@deuxchevaux.org> | 2013-12-15 01:39:56 +0100 |
---|---|---|
committer | Axel Beckert <abe@deuxchevaux.org> | 2013-12-15 01:39:56 +0100 |
commit | 929ba17dafd21ffe30ae7610c481e9d6fe306a5d (patch) | |
tree | 27784498a7b57dad795ec53472c8b63cd7d43c0a /Src | |
parent | 9cbb2a6e5f22298bc12f08d75962f53d1feb4ab6 (diff) | |
parent | b0d29667d32120019a1f333266539dcd136f659b (diff) | |
download | zsh-929ba17dafd21ffe30ae7610c481e9d6fe306a5d.tar.gz zsh-929ba17dafd21ffe30ae7610c481e9d6fe306a5d.zip |
New upstream release
Diffstat (limited to 'Src')
-rw-r--r-- | Src/exec.c | 5 | ||||
-rw-r--r-- | Src/init.c | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/Src/exec.c b/Src/exec.c index df915e152..dccdc2b0d 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -3309,7 +3309,10 @@ execcmd(Estate state, int input, int output, int how, int last1) } if (type == WC_SIMPLE) { if (varspc) { - addvars(state, varspc, ADDVAR_EXPORT|ADDVAR_RESTRICT); + int addflags = ADDVAR_EXPORT|ADDVAR_RESTRICT; + if (forked) + addflags |= ADDVAR_RESTORE; + addvars(state, varspc, addflags); if (errflag) _exit(1); } diff --git a/Src/init.c b/Src/init.c index 7032ff8ae..53c4fbd72 100644 --- a/Src/init.c +++ b/Src/init.c @@ -281,7 +281,7 @@ parseargs(char **argv, char **runscript) /**/ static void -parseopts_insert(LinkList optlist, void *base, int optno) +parseopts_insert(LinkList optlist, char *base, int optno) { LinkNode node; void *ptr = base + (optno < 0 ? -optno : optno); |