diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2008-09-26 09:11:27 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2008-09-26 09:11:27 +0000 |
commit | b2d08a2155afe05d2dd6a01b6a2d2c5035d30b45 (patch) | |
tree | d5da7bfce0adcab7703f8997ad34c1a59996c3de /Src/exec.c | |
parent | 84584ea58bf0a8f58ed0dcd30d769adffa3377f7 (diff) | |
download | zsh-b2d08a2155afe05d2dd6a01b6a2d2c5035d30b45.tar.gz zsh-b2d08a2155afe05d2dd6a01b6a2d2c5035d30b45.tar.xz zsh-b2d08a2155afe05d2dd6a01b6a2d2c5035d30b45.zip |
25744: dynamic named directories and further doshfunc() simplification
Diffstat (limited to 'Src/exec.c')
-rw-r--r-- | Src/exec.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/Src/exec.c b/Src/exec.c index ad6f9955d..36e381eaa 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -518,7 +518,7 @@ commandnotfound(char *arg0, LinkList args) return 127; pushnode(args, arg0); - return doshfunc(shf, args, shf->node.flags, 1); + return doshfunc(shf, args, 1); } /* execute an external command */ @@ -4064,7 +4064,7 @@ execshfunc(Shfunc shf, LinkList args) cmdsp = 0; if ((osfc = sfcontext) == SFC_NONE) sfcontext = SFC_DIRECT; - doshfunc(shf, args, shf->node.flags, 0); + doshfunc(shf, args, 0); sfcontext = osfc; free(cmdstack); cmdstack = ocs; @@ -4191,8 +4191,6 @@ loadautofn(Shfunc shf, int fksh, int autol) * in which the first element is the function name (even if * FUNCTIONARGZERO is set as this is handled inside this function). * - * flags are a set of the PM_ flags associated with the function. - * * If noreturnval is nonzero, then reset the current return * value (lastval) to its value before the shell function * was executed. However, in any case return the status value @@ -4202,13 +4200,14 @@ loadautofn(Shfunc shf, int fksh, int autol) /**/ mod_export int -doshfunc(Shfunc shfunc, LinkList doshargs, int flags, int noreturnval) +doshfunc(Shfunc shfunc, LinkList doshargs, int noreturnval) { char **tab, **x, *oargv0; int oldzoptind, oldlastval, oldoptcind, oldnumpipestats, ret; int *oldpipestats = NULL; char saveopts[OPT_SIZE], *oldscriptname = scriptname; char *name = shfunc->node.nam; + int flags = shfunc->node.flags; char *fname = dupstring(name); int obreaks, saveemulation ; Eprog prog; |