diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2005-01-26 12:34:31 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2005-01-26 12:34:31 +0000 |
commit | 77bd05014d086bc76d42b8be656cb299d811376a (patch) | |
tree | 75be3dc90c6f75ec42fd3e3d8e961afd4baca902 /Src/Zle | |
parent | efd03cf9e892d8faade5c2012ebfd6fac02664d4 (diff) | |
download | zsh-77bd05014d086bc76d42b8be656cb299d811376a.tar.gz zsh-77bd05014d086bc76d42b8be656cb299d811376a.tar.xz zsh-77bd05014d086bc76d42b8be656cb299d811376a.zip |
20750: fix hang with 20742
Diffstat (limited to 'Src/Zle')
-rw-r--r-- | Src/Zle/zle_utils.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/Src/Zle/zle_utils.c b/Src/Zle/zle_utils.c index a3f3d83a4..0e8099bd2 100644 --- a/Src/Zle/zle_utils.c +++ b/Src/Zle/zle_utils.c @@ -67,9 +67,16 @@ void sizeline(int sz) { while (sz > linesz) - zleline = + { + if (linesz < 256) + linesz = 256; + else + linesz *= 4; + + zleline = (ZLE_STRING_T)realloc(zleline, - ((linesz *= 4) + 2) * ZLE_CHAR_SIZE); + (linesz + 2) * ZLE_CHAR_SIZE); + } } /* |