diff options
| author | Peter Stephenson <p.stephenson@samsung.com> | 2021-10-05 16:45:55 +0100 |
|---|---|---|
| committer | Peter Stephenson <p.stephenson@samsung.com> | 2021-10-05 16:45:55 +0100 |
| commit | 0b3b25979478ed8af7b337b9ed6739fd69dfeee8 (patch) | |
| tree | c674d7eb9188308a8ef59a6ab5ce6781ea211abf | |
| parent | 49456: clean up detection of private params in nested scopes, update doc (diff) | |
| download | zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.tar zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.tar.gz zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.tar.bz2 zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.tar.lz zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.tar.xz zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.tar.zst zsh-0b3b25979478ed8af7b337b9ed6739fd69dfeee8.zip | |
49433: Don't assume EPROG references are bounded by function depth.
We use references for efficient function copy, so there is no useful limit any more.
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | Src/parse.c | 4 |
2 files changed, 5 insertions, 4 deletions
@@ -1,3 +1,8 @@ +2021-10-05 Peter Stephenson <p.stephenson@samsung.com> + + * 49433: Src/parse.c: Assuming EPROG references are bounded by + function depth is incorrect as we have efficient function copy. + 2021-10-04 Bart Schaefer <schaefer@zsh.org> * 49456: Doc/Zsh/mod_private.yo, Doc/Zsh/params.yo, diff --git a/Src/parse.c b/Src/parse.c index 10d193ba1..d612b7e17 100644 --- a/Src/parse.c +++ b/Src/parse.c @@ -2811,10 +2811,6 @@ freeeprog(Eprog p) DPUTS(p->nref > 0 && (p->flags & EF_HEAP), "Heap EPROG has nref > 0"); DPUTS(p->nref < 0 && !(p->flags & EF_HEAP), "Real EPROG has nref < 0"); DPUTS(p->nref < -1, "Uninitialised EPROG nref"); -#ifdef MAX_FUNCTION_DEPTH - DPUTS(zsh_funcnest >=0 && p->nref > zsh_funcnest + 10, - "Overlarge EPROG nref"); -#endif if (p->nref > 0 && !--p->nref) { for (i = p->npats, pp = p->pats; i--; pp++) freepatprog(*pp); |
