From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10694 invoked from network); 6 Jan 2000 09:27:11 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 6 Jan 2000 09:27:11 -0000 Received: (qmail 15386 invoked by alias); 6 Jan 2000 09:27:02 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 9236 Received: (qmail 15379 invoked from network); 6 Jan 2000 09:27:01 -0000 Date: Thu, 6 Jan 2000 10:27:00 +0100 (MET) Message-Id: <200001060927.KAA17174@beta.informatik.hu-berlin.de> From: Sven Wischnowsky To: zsh-workers@sunsite.auc.dk In-reply-to: Tanaka Akira's message of 06 Jan 2000 16:56:01 +0900 Subject: Re: BUG: listmatches called with bogus list Tanaka Akira wrote: > `echo =zsh-expand-word' shows `BUG: listmatches called > with bogus list'. Time for a bit of defensive programming, I think. Avoiding the error message was simple but finding out how to avoid the display bug that showed up after that... Bye Sven diff -ru ../z.old/Src/Zle/compresult.c Src/Zle/compresult.c --- ../z.old/Src/Zle/compresult.c Wed Jan 5 16:41:42 2000 +++ Src/Zle/compresult.c Thu Jan 6 10:24:36 2000 @@ -1827,9 +1827,9 @@ mod_export int invalidate_list(void) { - if (showinglist == -2) - listmatches(); if (validlist) { + if (showinglist == -2) + zrefresh(); freematches(lastmatches); lastmatches = NULL; hasoldlist = 0; diff -ru ../z.old/Src/Zle/zle_misc.c Src/Zle/zle_misc.c --- ../z.old/Src/Zle/zle_misc.c Wed Jan 5 16:41:43 2000 +++ Src/Zle/zle_misc.c Thu Jan 6 09:51:28 2000 @@ -640,7 +640,8 @@ executenamedcommand(char *prmt) { Thingy cmd; - int len, l = strlen(prmt), ols = listshown, feep = 0, listed = 0, curlist = 0; + int len, l = strlen(prmt), feep = 0, listed = 0, curlist = 0; + int ols = (listshown && validlist); char *ptr; char *okeymap = curkeymapname; -- Sven Wischnowsky wischnow@informatik.hu-berlin.de