about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
Diffstat (limited to 'Src')
-rw-r--r--Src/Zle/zle_tricky.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/Src/Zle/zle_tricky.c b/Src/Zle/zle_tricky.c
index 6b47bc144..e0687161f 100644
--- a/Src/Zle/zle_tricky.c
+++ b/Src/Zle/zle_tricky.c
@@ -7793,6 +7793,9 @@ listlist(LinkList l)
     int vl = validlist, sm = smatches, nm = nmatches;
     char *oclp = complastprompt;
     Cmgroup am = amatches;
+    struct cldata odat;
+
+    memcpy(&odat, &listdat, sizeof(struct cldata));
 
     if (listshown)
 	showagain = 1;
@@ -7804,6 +7807,7 @@ listlist(LinkList l)
     dg.ylist = (char **) makearray(l, 0, 1, &(dg.lcount), NULL, NULL);
     nmatches = dg.lcount;
     amatches = &dg;
+    listdat.valid = 0;
     ilistmatches(NULL, NULL);
     amatches = am;
 
@@ -7811,6 +7815,7 @@ listlist(LinkList l)
     smatches = sm;
     nmatches = nm;
     complastprompt = oclp;
+    memcpy(&listdat, &odat, sizeof(struct cldata));
 
     return !dg.lcount;
 }