mirror of
https://github.com/spf13/cobra
synced 2024-11-24 14:47:12 +00:00
Remove specail casing in Execute()
We had some stuff that created a new empty []string if args was already and empty string (why?) We had some stuff that called Help() if it wasn't runnable (but .execute() already does that) Just remove the special case stuff.
This commit is contained in:
parent
b9e25fa4a0
commit
794a362808
1 changed files with 3 additions and 14 deletions
15
command.go
15
command.go
|
@ -476,21 +476,10 @@ func (c *Command) Execute() (err error) {
|
|||
args = c.args
|
||||
}
|
||||
|
||||
if len(args) == 0 {
|
||||
// Only the executable is called and the root is runnable, run it
|
||||
if c.Runnable() {
|
||||
err = c.execute([]string(nil))
|
||||
} else {
|
||||
c.Help()
|
||||
}
|
||||
} else {
|
||||
cmd, flags, e := c.Find(args)
|
||||
if e != nil {
|
||||
err = e
|
||||
} else {
|
||||
cmd, flags, err := c.Find(args)
|
||||
if err == nil {
|
||||
err = cmd.execute(flags)
|
||||
}
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
if err == flag.ErrHelp {
|
||||
|
|
Loading…
Reference in a new issue