From a69ddbb9655444c63d932d11f91d05eef1265ae5 Mon Sep 17 00:00:00 2001 From: Matt Bell <mappum@gmail.com> Date: Wed, 19 Nov 2014 18:29:56 -0800 Subject: [PATCH] commands/cli: Fixed parse bug when optional argument is defined first --- commands/cli/parse.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/commands/cli/parse.go b/commands/cli/parse.go index a5a0e0715..9858a997e 100644 --- a/commands/cli/parse.go +++ b/commands/cli/parse.go @@ -182,9 +182,11 @@ func parseArgs(inputs []string, stdin *os.File, argDefs []cmds.Argument, recursi argDef := getArgDef(argDefIndex, argDefs) // skip optional argument definitions if there aren't sufficient remaining inputs - if numInputs-i <= numRequired && !argDef.Required { - continue - } else if argDef.Required { + for numInputs-i <= numRequired && !argDef.Required { + argDefIndex++ + argDef = getArgDef(argDefIndex, argDefs) + } + if argDef.Required { numRequired-- } -- GitLab