summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/Zle/compresult.c12
2 files changed, 11 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 676aa1f56..3a50d8df3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-07  Peter Stephenson  <pws@csr.com>
+
+	* 24959: Src/Zle/compresult.c: ^D's in compctl could cause a
+	crash.
+
 2008-05-06  Peter Stephenson  <p.w.stephenson@ntlworld.com>
 
 	* 24957: Doc/Zsh/zle.yo, Src/Zle/zle_refresh.c: better sanity
diff --git a/Src/Zle/compresult.c b/Src/Zle/compresult.c
index 61fcceaaa..e595802dd 100644
--- a/Src/Zle/compresult.c
+++ b/Src/Zle/compresult.c
@@ -1188,6 +1188,12 @@ do_menucmp(int lst)
 {
     int was_meta;
 
+    /* Just list the matches if the list was requested. */
+    if (lst == COMP_LIST_COMPLETE) {
+	showinglist = -2;
+	return;
+    }
+
     /* Already metafied when called from domenuselect already */
     if (zlemetaline == NULL) {
 	was_meta = 0;
@@ -1195,12 +1201,6 @@ do_menucmp(int lst)
     } else
 	was_meta = 1;
 
-    /* Just list the matches if the list was requested. */
-    if (lst == COMP_LIST_COMPLETE) {
-	showinglist = -2;
-	return;
-    }
-
     /* Otherwise go to the next match in the array... */
     do {
 	if (!*++(minfo.cur)) {