1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-01-01 05:16:05 +01:00

25405: return status from anonymous functions was not handled

This commit is contained in:
Peter Stephenson 2008-08-06 15:45:37 +00:00
parent b36d4eec0b
commit d026334a3b
2 changed files with 6 additions and 2 deletions

View file

@ -1,5 +1,8 @@
2008-08-06 Peter Stephenson <pws@csr.com>
* 25405: Src/exec.c: return value was not set from anonymous
functions.
* 25400: Test/C03traps.ztst: Rocky's test for 25385
2008-08-05 Peter Stephenson <pws@csr.com>

View file

@ -3870,7 +3870,7 @@ execfuncdef(Estate state, UNUSED(int do_exec))
{
Shfunc shf;
char *s = NULL;
int signum, nprg, sbeg, nstrs, npats, len, plen, i, htok = 0;
int signum, nprg, sbeg, nstrs, npats, len, plen, i, htok = 0, ret = 0;
Wordcode beg = state->pc, end;
Eprog prog;
Patprog *pp;
@ -3941,6 +3941,7 @@ execfuncdef(Estate state, UNUSED(int do_exec))
addlinknode(args, shf->node.nam);
execshfunc(shf, args);
ret = lastval;
break;
} else {
/* is this shell function a signal trap? */
@ -3963,7 +3964,7 @@ execfuncdef(Estate state, UNUSED(int do_exec))
}
}
state->pc = end;
return 0;
return ret;
}
/* Main entry point to execute a shell function. */