about summary refs log tree commit diff
path: root/Src/Zle/compresult.c
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>2000-01-28 14:04:23 +0000
committerTanaka Akira <akr@users.sourceforge.net>2000-01-28 14:04:23 +0000
commit17ef03b99b637609286ea8fe365f90df91a577ab (patch)
treec20c2be67155007b50e56f01a4c047b653020edc /Src/Zle/compresult.c
parent5ce459243f75e0505383340cace0c5838cff5133 (diff)
downloadzsh-17ef03b99b637609286ea8fe365f90df91a577ab.tar.gz
zsh-17ef03b99b637609286ea8fe365f90df91a577ab.tar.xz
zsh-17ef03b99b637609286ea8fe365f90df91a577ab.zip
zsh-workers/9458
Diffstat (limited to 'Src/Zle/compresult.c')
-rw-r--r--Src/Zle/compresult.c23
1 files changed, 14 insertions, 9 deletions
diff --git a/Src/Zle/compresult.c b/Src/Zle/compresult.c
index fb0e478cc..6ec031322 100644
--- a/Src/Zle/compresult.c
+++ b/Src/Zle/compresult.c
@@ -1828,19 +1828,24 @@ int
 list_matches(Hookdef dummy, void *dummy2)
 {
     struct chdata dat;
+    int ret;
 
+    HEAPALLOC {
 #ifdef DEBUG
-    /* Sanity check */
-    if (!validlist) {
-	showmsg("BUG: listmatches called with bogus list");
-	return 1;
-    }
+	/* Sanity check */
+	if (!validlist) {
+	    showmsg("BUG: listmatches called with bogus list");
+	    return 1;
+	}
 #endif
 
-    dat.matches = amatches;
-    dat.num = nmatches;
-    dat.cur = NULL;
-    return runhookdef(COMPLISTMATCHESHOOK, (void *) &dat);
+	dat.matches = amatches;
+	dat.num = nmatches;
+	dat.cur = NULL;
+	ret = runhookdef(COMPLISTMATCHESHOOK, (void *) &dat);
+    } LASTALLOC;
+
+    return ret;
 }
 
 /* Invalidate the completion list. */