Pass context into handleExitCoder

This commit is contained in:
Tyler Davis
2017-06-28 09:52:12 -07:00
parent 9d61cbad02
commit 530df59178
3 changed files with 14 additions and 14 deletions

18
app.go
View File

@@ -210,7 +210,7 @@ func (a *App) Run(arguments []string) (err error) {
if err != nil {
if a.OnUsageError != nil {
err := a.OnUsageError(context, err, false)
a.handleExitCoder(err)
a.handleExitCoder(context, err)
return err
}
fmt.Fprintf(a.Writer, "%s %s\n\n", "Incorrect Usage.", err.Error())
@@ -245,7 +245,7 @@ func (a *App) Run(arguments []string) (err error) {
if beforeErr != nil {
fmt.Fprintf(a.Writer, "%v\n\n", beforeErr)
ShowAppHelp(context)
a.handleExitCoder(beforeErr)
a.handleExitCoder(context, beforeErr)
err = beforeErr
return err
}
@@ -267,7 +267,7 @@ func (a *App) Run(arguments []string) (err error) {
// Run default Action
err = HandleAction(a.Action, context)
a.handleExitCoder(err)
a.handleExitCoder(context, err)
return err
}
@@ -334,7 +334,7 @@ func (a *App) RunAsSubcommand(ctx *Context) (err error) {
if err != nil {
if a.OnUsageError != nil {
err = a.OnUsageError(context, err, true)
a.handleExitCoder(err)
a.handleExitCoder(context, err)
return err
}
fmt.Fprintf(a.Writer, "%s %s\n\n", "Incorrect Usage.", err.Error())
@@ -356,7 +356,7 @@ func (a *App) RunAsSubcommand(ctx *Context) (err error) {
defer func() {
afterErr := a.After(context)
if afterErr != nil {
a.handleExitCoder(err)
a.handleExitCoder(context, err)
if err != nil {
err = NewMultiError(err, afterErr)
} else {
@@ -369,7 +369,7 @@ func (a *App) RunAsSubcommand(ctx *Context) (err error) {
if a.Before != nil {
beforeErr := a.Before(context)
if beforeErr != nil {
a.handleExitCoder(beforeErr)
a.handleExitCoder(context, beforeErr)
err = beforeErr
return err
}
@@ -387,7 +387,7 @@ func (a *App) RunAsSubcommand(ctx *Context) (err error) {
// Run default Action
err = HandleAction(a.Action, context)
a.handleExitCoder(err)
a.handleExitCoder(context, err)
return err
}
@@ -468,9 +468,9 @@ func (a *App) appendFlag(flag Flag) {
}
}
func (a *App) handleExitCoder(err error) {
func (a *App) handleExitCoder(context *Context, error) {
if a.ExitErrHandler != nil {
a.ExitErrHandler(err)
a.ExitErrHandler(context, err)
} else {
HandleExitCoder(err)
}