From 6d5851fd12f4116c2cf26bc830ee7c1f51e57c45 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Sun, 5 Jun 2016 15:28:25 -0400 Subject: [PATCH] Pass the same args to ValidateArgs as the Run methods receive. Signed-off-by: Daniel Nephin --- command.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/command.go b/command.go index 3d2a932f6..076b6fc2e 100644 --- a/command.go +++ b/command.go @@ -567,10 +567,6 @@ func (c *Command) execute(a []string) (err error) { return flag.ErrHelp } - if err := c.ValidateArgs(a); err != nil { - return err - } - c.preRun() argWoFlags := c.Flags().Args() @@ -578,6 +574,10 @@ func (c *Command) execute(a []string) (err error) { argWoFlags = a } + if err := c.ValidateArgs(argWoFlags); err != nil { + return err + } + for p := c; p != nil; p = p.Parent() { if p.PersistentPreRunE != nil { if err := p.PersistentPreRunE(c, argWoFlags); err != nil { @@ -717,7 +717,7 @@ func (c *Command) ValidateArgs(args []string) error { if c.Args == nil { return nil } - return c.Args(c, stripFlags(args, c)) + return c.Args(c, args) } func (c *Command) initHelpFlag() {