about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
authorHan Pingtian <hanpt@linux.vnet.ibm.com>2015-07-01 16:34:40 +0800
committerPeter Stephenson <pws@zsh.org>2015-07-02 16:28:14 +0100
commit38145b255a941098a92ded3647f70be977483fa9 (patch)
tree70f6b9807cf8c2c55396047fb24417a1a51e577a /Src
parent96fa41a7c8114d9a5bddec29fdbd0997a74ee745 (diff)
downloadzsh-38145b255a941098a92ded3647f70be977483fa9.tar.gz
zsh-38145b255a941098a92ded3647f70be977483fa9.tar.xz
zsh-38145b255a941098a92ded3647f70be977483fa9.zip
35665: better handling for command line completion match handling
Diffstat (limited to 'Src')
-rw-r--r--Src/Zle/complete.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/Src/Zle/complete.c b/Src/Zle/complete.c
index 63e5b9184..471c9f491 100644
--- a/Src/Zle/complete.c
+++ b/Src/Zle/complete.c
@@ -268,7 +268,10 @@ parse_cmatcher(char *name, char *s)
 
 	    if (!*s || !*++s) {
 		if (name)
-		    zwarnnam(name, "missing line pattern");
+                   if (both)
+                       zwarnnam(name, "missing right anchor");
+                   else
+                       zwarnnam(name, "missing line pattern");
 		return pcm_err;
 	    }
 	} else
@@ -288,6 +291,7 @@ parse_cmatcher(char *name, char *s)
 	if ((fl & CMF_RIGHT) && !fl2 && (!*s || !*++s)) {
 	    if (name)
 		zwarnnam(name, "missing right anchor");
+           return pcm_err;
 	} else if (!(fl & CMF_RIGHT) || fl2) {
 	    if (!*s) {
 		if (name)
@@ -313,8 +317,7 @@ parse_cmatcher(char *name, char *s)
 		return pcm_err;
 	    }
 	    s++;
-	} else
-	    right = NULL;
+       }
 
 	if (*s == '*') {
 	    if (!(fl & (CMF_LEFT | CMF_RIGHT))) {