mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-11-28 03:10:56 +01:00
zsh-3.1.5-pws-4
This commit is contained in:
parent
9003d99d16
commit
2a5a899a55
47 changed files with 1371 additions and 341 deletions
22
Src/exec.c
22
Src/exec.c
|
|
@ -113,7 +113,12 @@ pid_t cmdoutpid;
|
|||
|
||||
/**/
|
||||
int cmdoutval;
|
||||
|
||||
|
||||
/* The context in which a shell function is called, see SFC_* in zsh.h. */
|
||||
|
||||
/**/
|
||||
int sfcontext;
|
||||
|
||||
/* Stack to save some variables before executing a signal handler function */
|
||||
|
||||
/**/
|
||||
|
|
@ -2771,19 +2776,14 @@ runshfunc(List list, FuncWrap wrap, char *name)
|
|||
char *ou;
|
||||
|
||||
while (wrap) {
|
||||
wrap->module->flags |= MOD_WRAPPER;
|
||||
wrap->count++;
|
||||
wrap->module->wrapper++;
|
||||
cont = wrap->handler(list, wrap->next, name);
|
||||
wrap->count--;
|
||||
if (!wrap->count) {
|
||||
wrap->module->flags &= ~MOD_WRAPPER;
|
||||
wrap->module->wrapper--;
|
||||
#ifdef DYNAMIC
|
||||
if (wrap->module->flags & MOD_UNLOAD) {
|
||||
wrap->module->flags &= ~MOD_UNLOAD;
|
||||
unload_module(wrap->module, NULL);
|
||||
}
|
||||
if (!wrap->module->wrapper &&
|
||||
(wrap->module->flags & MOD_UNLOAD))
|
||||
unload_module(wrap->module, NULL);
|
||||
#endif
|
||||
}
|
||||
if (!cont)
|
||||
return;
|
||||
wrap = wrap->next;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue