about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-09-22 13:02:59 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-09-22 13:02:59 +0000
commitcf92dbd40be49e48c6ac2039988acdbb1e60251f (patch)
tree28e1c077feeaaa9971328a4d1eeb40026f861839
parent3b0bd4cf4a314519d936ecc1dbd62673598e38e3 (diff)
downloadzsh-cf92dbd40be49e48c6ac2039988acdbb1e60251f.tar.gz
zsh-cf92dbd40be49e48c6ac2039988acdbb1e60251f.tar.xz
zsh-cf92dbd40be49e48c6ac2039988acdbb1e60251f.zip
zsh-workers/7974
-rw-r--r--Src/Zle/zle_tricky.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/Src/Zle/zle_tricky.c b/Src/Zle/zle_tricky.c
index cf8ce63e1..16b93716c 100644
--- a/Src/Zle/zle_tricky.c
+++ b/Src/Zle/zle_tricky.c
@@ -7272,13 +7272,23 @@ makearray(LinkList l, int s, int *np, int *nlp, int *llp)
 		nl++;
 	}
 	*cp = NULL;
-    } else
+    } else {
+	for (ap = rp; *ap; ap++) {
+	    for (bp = cp = ap + 1; *bp; bp++) {
+		if (!matcheq(*ap, *bp))
+		    *cp++ = *bp;
+		else
+		    n--;
+	    }
+	    *cp = NULL;
+	}
 	for (ap = rp; *ap; ap++) {
 	    if ((*ap)->disp && ((*ap)->flags & CMF_DISPLINE))
 		ll++;
 	    if ((*ap)->flags & CMF_NOLIST)
 		nl++;
 	}
+    }
     if (np)
 	*np = n;
     if (nlp)