From d2e2d7769432c4fb6f668fb69fc53d4be1e7ee6a Mon Sep 17 00:00:00 2001 From: luyanbo Date: Mon, 11 Oct 2021 22:59:14 +0800 Subject: [PATCH] use findAndParseFlag instead of ParseFlags --- command.go | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/command.go b/command.go index c46885df..1c536d62 100644 --- a/command.go +++ b/command.go @@ -726,8 +726,10 @@ func (c *Command) findAndParseFlag(args []string) (*Command, error) { // return c.FlagErrorFunc()(c, err) // } return innerfind(cmd, afterArgs) + } else { + c.ParseFlags(innerArgs) + return c, innerArgs } - return c, innerArgs } commandFound, a := innerfind(c, args) @@ -870,13 +872,13 @@ func (c *Command) execute(a []string) (err error) { // initialize help and version flag at the last point possible to allow for user // overriding - c.InitDefaultHelpFlag() - c.InitDefaultVersionFlag() + // c.InitDefaultHelpFlag() + // c.InitDefaultVersionFlag() - err = c.ParseFlags(a) - if err != nil { - return c.FlagErrorFunc()(c, err) - } + // err = c.ParseFlags(a) + // if err != nil { + // return c.FlagErrorFunc()(c, err) + // } // If help is called, regardless of other flags, return we want help. // Also say we need help if the command isn't runnable.