3
0

Add extra panic-recovery for websocket write & ping fn

This commit is contained in:
Denis Arh
2022-02-22 14:57:41 +01:00
parent 702471c946
commit f76b94e749
+12
View File
@@ -223,6 +223,12 @@ func (s *session) writeLoop() error {
}()
write := func(msg []byte) (err error) {
defer func() {
if recErr := recover(); recErr != nil {
s.logger.Debug("recovering from write panic", zap.Error(err))
}
}()
if s.conn == nil {
// Connection closed, nowhere to write
return
@@ -240,6 +246,12 @@ func (s *session) writeLoop() error {
}
ping := func() (err error) {
defer func() {
if recErr := recover(); recErr != nil {
s.logger.Debug("recovering from ping panic", zap.Error(err))
}
}()
if s.conn == nil {
// Connection closed, nothing to ping
return