diff --git a/errors.go b/errors.go index 161aea2..bc93026 100644 --- a/errors.go +++ b/errors.go @@ -282,7 +282,11 @@ func Cause(err error) error { if !ok { break } - err = cause.Cause() + if cerr := cause.Cause(); cerr != nil { + err = cerr + } else { + break + } } return err }