Merge pull request #66 from shsjshentao/fixbug/assertError
fix bug, failed to assert net error due to error wrap
This commit is contained in:
commit
09ff6c422e
@ -339,7 +339,8 @@ func filterCloseErr(err error) error {
|
|||||||
return ErrClosed
|
return ErrClosed
|
||||||
default:
|
default:
|
||||||
// if we have an epipe on a write or econnreset on a read , we cast to errclosed
|
// if we have an epipe on a write or econnreset on a read , we cast to errclosed
|
||||||
if oerr, ok := err.(*net.OpError); ok && (oerr.Op == "write" || oerr.Op == "read") {
|
var oerr *net.OpError
|
||||||
|
if errors.As(err, &oerr) && (oerr.Op == "write" || oerr.Op == "read") {
|
||||||
serr, sok := oerr.Err.(*os.SyscallError)
|
serr, sok := oerr.Err.(*os.SyscallError)
|
||||||
if sok && ((serr.Err == syscall.EPIPE && oerr.Op == "write") ||
|
if sok && ((serr.Err == syscall.EPIPE && oerr.Op == "write") ||
|
||||||
(serr.Err == syscall.ECONNRESET && oerr.Op == "read")) {
|
(serr.Err == syscall.ECONNRESET && oerr.Op == "read")) {
|
||||||
|
Loading…
Reference in New Issue
Block a user