commands/cli: Fixed parse bug when optional argument is defined first
Matt Bell committed
Nov 19, 2014 at 18:29 UTC
a69ddbb9655444c63d932d11f91d05eef1265ae5
1 file changed
+5
-3
commands/cli/parse.go
+5
-3
@@ -182,9 +182,11 @@ func parseArgs(inputs []string, stdin *os.File, argDefs []cmds.Argument, recursi
182
argDef := getArgDef(argDefIndex, argDefs)
183
184
// skip optional argument definitions if there aren't sufficient remaining inputs
185
- if numInputs-i <= numRequired && !argDef.Required {
186
- continue
187
- } else if argDef.Required {
185
+ for numInputs-i <= numRequired && !argDef.Required {
186
+ argDefIndex++
187
+ argDef = getArgDef(argDefIndex, argDefs)
188
+ }
189
+ if argDef.Required {
190
numRequired--
191
}
192