summary refs log tree commit diff
path: root/Src/Zle
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Zle')
-rw-r--r--Src/Zle/computil.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Src/Zle/computil.c b/Src/Zle/computil.c
index d8b4f0cb6..1a98528df 100644
--- a/Src/Zle/computil.c
+++ b/Src/Zle/computil.c
@@ -1437,7 +1437,7 @@ ca_parse_line(Cadef d, int multi, int first)
 		 state.def->type == CAA_RARGS)) {
 		state.inrest = 0;
 		state.opt = (cur == state.nargbeg + 1 &&
-			     (!*line || 
+			     (!multi || !*line || 
 			      ((*line == '-' || *line == '+') &&
 			       (!line[1] ||
 				(*line == '-' && line[1] == '-' && !line[2])))));
@@ -1516,7 +1516,7 @@ ca_parse_line(Cadef d, int multi, int first)
 		}
 	    } else {
 		ca_laststate.def = adef;
-		ca_laststate.opt = (!arglast || !*line || 
+		ca_laststate.opt = (!arglast || !multi || !*line || 
 				    ((*line == '-' || *line == '+') &&
 				     (!line[1] ||
 				      (*line == '-' && line[1] == '-' && !line[2]))));