Merge pull request #85 from eparis/more-simplification

More simplification
This commit is contained in:
Eric Paris 2015-04-30 10:21:12 -05:00
commit 7c7837e882
1 changed files with 13 additions and 25 deletions

View File

@ -432,7 +432,7 @@ func (c *Command) execute(a []string) (err error) {
c.Usage() c.Usage()
r.SetOutput(out) r.SetOutput(out)
return err return err
} else { }
// If help is called, regardless of other flags, we print that. // If help is called, regardless of other flags, we print that.
// Print help also if c.Run is nil. // Print help also if c.Run is nil.
if c.helpFlagVal || !c.Runnable() { if c.helpFlagVal || !c.Runnable() {
@ -444,7 +444,6 @@ func (c *Command) execute(a []string) (err error) {
argWoFlags := c.Flags().Args() argWoFlags := c.Flags().Args()
c.Run(c, argWoFlags) c.Run(c, argWoFlags)
return nil return nil
}
} }
func (c *Command) preRun() { func (c *Command) preRun() {
@ -495,21 +494,10 @@ func (c *Command) Execute() (err error) {
args = c.args args = c.args
} }
if len(args) == 0 { cmd, flags, err := c.Find(args)
// Only the executable is called and the root is runnable, run it if err == nil {
if c.Runnable() {
err = c.execute([]string(nil))
} else {
c.Help()
}
} else {
cmd, flags, e := c.Find(args)
if e != nil {
err = e
} else {
err = cmd.execute(flags) err = cmd.execute(flags)
} }
}
if err != nil { if err != nil {
if err == flag.ErrHelp { if err == flag.ErrHelp {