about summary refs log tree commit diff
path: root/Src/Zle/computil.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Zle/computil.c')
-rw-r--r--Src/Zle/computil.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/Src/Zle/computil.c b/Src/Zle/computil.c
index c8e965a8d..f749a6099 100644
--- a/Src/Zle/computil.c
+++ b/Src/Zle/computil.c
@@ -1399,7 +1399,8 @@ ca_set_data(char *opt, Caarg arg, char **args, int single)
     for (; arg && (arg->num < 0 ||
 		   (arg->min <= ca_laststate.nth + addopt &&
 		    arg->num >= ca_laststate.nth));) {
-	if (!opt && (lopt = arg->type != CAA_OPT) && oopt > 0)
+	lopt = (arg->type == CAA_OPT);
+	if (!opt && !lopt && oopt > 0)
 	    oopt = 0;
 
 	addlinknode(descr, arg->descr);
@@ -1446,7 +1447,7 @@ ca_set_data(char *opt, Caarg arg, char **args, int single)
 	    }
 	}
     }
-    if (!single && opt && !lopt) {
+    if (!single && opt && lopt) {
 	opt = NULL;
 	arg = ca_get_arg(ca_laststate.d, ca_laststate.nth);