From 4a376d7250e899851f0bbd68898f619d750459c4 Mon Sep 17 00:00:00 2001 From: Sven Wischnowsky Date: Mon, 8 Jan 2001 15:25:01 +0000 Subject: fix for listpacked for matches as long as screen is wide (minus added spaces); more security when freeing matches: make sure current menu match pointer isn't used afterwards (13331) --- ChangeLog | 7 +++++++ Src/Zle/compcore.c | 1 + Src/Zle/compresult.c | 8 ++++---- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 42fb5d75d..a2b771cbd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2001-01-08 Sven Wischnowsky + + * 13331: Src/Zle/compcore.c, Src/Zle/compresult.c: fix for + listpacked for matches as long as screen is wide (minus added + spaces); more security when freeing matches: make sure current + menu match pointer isn't used afterwards + 2001-01-07 Peter Stephenson * 13327: Etc/MACHINES: builds out of the box on SCO UnixWare diff --git a/Src/Zle/compcore.c b/Src/Zle/compcore.c index fa8104169..06e7afbfb 100644 --- a/Src/Zle/compcore.c +++ b/Src/Zle/compcore.c @@ -2932,4 +2932,5 @@ freematches(Cmgroup g) g = n; } + minfo.cur = NULL; } diff --git a/Src/Zle/compresult.c b/Src/Zle/compresult.c index 7b2707681..f30d8259a 100644 --- a/Src/Zle/compresult.c +++ b/Src/Zle/compresult.c @@ -1495,7 +1495,7 @@ calclist(int showall) ws[tcol++] = maxlen; width += maxlen; } - if (!count && width < columns && + if (!count && width <= columns && (tcols <= 0 || beg == end)) break; @@ -1536,7 +1536,7 @@ calclist(int showall) ws[tcols++] = maxlen; width += maxlen; } - if (nth == yl && width < columns && + if (nth == yl && width <= columns && (beg == end || tlines >= g->lins)) break; @@ -1593,7 +1593,7 @@ calclist(int showall) ws[tcol++] = maxlen; width += maxlen; } - if (!count && width < columns && + if (!count && width <= columns && (tcols <= 0 || beg == end)) break; @@ -1642,7 +1642,7 @@ calclist(int showall) ws[tcols++] = maxlen; width += maxlen; } - if (nth == g->dcount && width < columns && + if (nth == g->dcount && width <= columns && (beg == end || tlines >= g->lins)) break; -- cgit 1.4.1