Skip to content

Commit b48e1a2

Browse files
committed
Properly handle net.OpError and handshake failure
1 parent b9a4000 commit b48e1a2

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

error.go

+4-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import (
44
"database/sql/driver"
55
"fmt"
66
"io"
7+
"net"
78
"runtime"
89
)
910

@@ -65,8 +66,10 @@ func errRecover(err *error) {
6566
} else {
6667
*err = v
6768
}
69+
case *net.OpError:
70+
*err = driver.ErrBadConn
6871
case error:
69-
if v == io.EOF || (*err).Error() == "remote error: handshake failure" {
72+
if v == io.EOF || v.(error).Error() == "remote error: handshake failure" {
7073
*err = driver.ErrBadConn
7174
} else {
7275
*err = v

0 commit comments

Comments
 (0)