diff --git a/util.go b/util.go index 857222a..d2c1897 100644 --- a/util.go +++ b/util.go @@ -24,7 +24,7 @@ func handleErr(err *error, _err interface{}) { } } -func handle(err error, msg string, args ...interface{}) error { +func handle(err error, msg string, args ...interface{}) *xerror { if len(args) > 0 { msg = fmt.Sprintf(msg, args...) } @@ -93,8 +93,6 @@ func trans(err error) *xerror { case *xerror: return err default: - return &xerror{ - Cause1: err, - } + return nil } } diff --git a/xerror.go b/xerror.go index b67499b..d4edd81 100644 --- a/xerror.go +++ b/xerror.go @@ -68,7 +68,7 @@ func RespExit() { return } - fmt.Println(handle(err, "").(*xerror).p()) + fmt.Println(handle(err, "").p()) debug.PrintStack() os.Exit(1) } @@ -151,7 +151,7 @@ func ExitErr(_ interface{}, err error) { return } - fmt.Println(handle(err, "").(*xerror).p()) + fmt.Println(handle(err, "").p()) debug.PrintStack() os.Exit(1) } @@ -162,7 +162,7 @@ func ExitF(err error, msg string, args ...interface{}) { return } - fmt.Println(handle(err, msg, args...).(*xerror).p()) + fmt.Println(handle(err, msg, args...).p()) debug.PrintStack() os.Exit(1) } @@ -172,7 +172,7 @@ func Exit(err error) { return } - fmt.Println(handle(err, "").(*xerror).p()) + fmt.Println(handle(err, "").p()) debug.PrintStack() os.Exit(1) } diff --git a/xerror_test.go b/xerror_test.go index a34b97e..bf947e5 100644 --- a/xerror_test.go +++ b/xerror_test.go @@ -1,6 +1,7 @@ package xerror_test import ( + "errors" "fmt" "github.com/pubgo/xerror" "github.com/pubgo/xerror/errs" @@ -28,6 +29,10 @@ func TestName(t *testing.T) { xerror.Panic(a2(1, 2, 4, 5)) } +func TestExit(t *testing.T) { + xerror.Exit(errors.New("ss")) +} + func TestTry(t *testing.T) { fmt.Println(xerror.Try(func() { panic("hello")