From 77bd05014d086bc76d42b8be656cb299d811376a Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Wed, 26 Jan 2005 12:34:31 +0000 Subject: 20750: fix hang with 20742 --- ChangeLog | 5 +++++ Src/Zle/zle_utils.c | 11 +++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2cbeedf88..728de3ca9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-01-26 Peter Stephenson + + * 20750: Src/zle_utils.c: 20742 could cause hang when line + resized to empty. + 2005-01-25 Peter Stephenson * 20742: Src/system.h, Src/Zle/zle.h, Src/Zle/zle_main.c, 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); + } } /* -- cgit 1.4.1