diff options
author | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2001-03-06 13:00:40 +0000 |
---|---|---|
committer | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2001-03-06 13:00:40 +0000 |
commit | 684c9eebe52be2f8e7ef05df794f5213b5858555 (patch) | |
tree | 3e7fb3f9ee151f1a961fea0b53117ff75510b2a4 /Src/lex.c | |
parent | c8f2e51007b7e3fd4bf581ca92b4ff13e7aae8ed (diff) | |
download | zsh-684c9eebe52be2f8e7ef05df794f5213b5858555.tar.gz zsh-684c9eebe52be2f8e7ef05df794f5213b5858555.tar.xz zsh-684c9eebe52be2f8e7ef05df794f5213b5858555.zip |
make the parser use real memory for the ecbuf to avoid having hrealloc() throw away lots of memory (13576)
Diffstat (limited to 'Src/lex.c')
-rw-r--r-- | Src/lex.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Src/lex.c b/Src/lex.c index 322bb9abe..de58ade7a 100644 --- a/Src/lex.c +++ b/Src/lex.c @@ -270,6 +270,7 @@ lexsave(void) inredir = 0; hdocs = NULL; histactive = 0; + ecbuf = NULL; ls->next = lstack; lstack = ls; @@ -318,6 +319,8 @@ lexrestore(void) hwbegin = lstack->hwbegin; hwend = lstack->hwend; addtoline = lstack->addtoline; + if (ecbuf) + zfree(ecbuf, eclen); eclen = lstack->eclen; ecused = lstack->ecused; ecnpats = lstack->ecnpats; |