about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2000-04-03 12:14:52 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2000-04-03 12:14:52 +0000
commitb5019ef4e540008b9438b3cf4f06daa5f04d5bcc (patch)
tree63aa51639d1907ee6a45ec12bc44bf3bd657b54c
parent0956e0339aea01fa309ba590c0b483d5a7d5d4b6 (diff)
downloadzsh-b5019ef4e540008b9438b3cf4f06daa5f04d5bcc.tar.gz
zsh-b5019ef4e540008b9438b3cf4f06daa5f04d5bcc.tar.xz
zsh-b5019ef4e540008b9438b3cf4f06daa5f04d5bcc.zip
Recognise new parts in partial word completion
-rw-r--r--Src/Zle/compmatch.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Src/Zle/compmatch.c b/Src/Zle/compmatch.c
index 3dda28e11..0a377ddb0 100644
--- a/Src/Zle/compmatch.c
+++ b/Src/Zle/compmatch.c
@@ -351,7 +351,6 @@ add_match_part(Cmatcher m, char *l, char *w, int wl,
 
     p = bld_parts(s, sl, osl, &lp);
 
-    p->flags &= ~CLF_NEW;
     if (m && (m->flags & CMF_LEFT)) {
 	lp->flags |= CLF_SUF;
 	lp->suffix = lp->prefix;
@@ -384,7 +383,8 @@ add_match_part(Cmatcher m, char *l, char *w, int wl,
     lp->line = l; lp->llen = wl;
     lp->word = w; lp->wlen = wl;
     lp->orig = o; lp->olen = ol;
-    lp->flags &= ~CLF_NEW;
+    if (o || ol)
+	lp->flags &= ~CLF_NEW;
 
     /* Finally, put the new parts on the list. */
     if (matchlastpart)