From 28bec71c969aeb73ce4eabceac2b3469b2631c94 Mon Sep 17 00:00:00 2001 From: Erik Dubbelboer Date: Fri, 26 Aug 2022 14:15:21 +0200 Subject: [PATCH] Fix "use of closed network connection" error check This was refactored out incorrectly in a previous change. --- server.go | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/server.go b/server.go index 08dec4e..a7e93b1 100644 --- a/server.go +++ b/server.go @@ -1861,21 +1861,21 @@ func acceptConn(s *Server, ln net.Listener, lastPerIPErrorTime *time.Time) (net. var c net.Conn var err error if tl, ok := ln.(*net.TCPListener); ok && s.TCPKeepalive { - tc, err := tl.AcceptTCP() - if err != nil { - return nil, err - } - if err := tc.SetKeepAlive(s.TCPKeepalive); err != nil { - tc.Close() //nolint:errcheck - return nil, err - } - if s.TCPKeepalivePeriod > 0 { - if err := tc.SetKeepAlivePeriod(s.TCPKeepalivePeriod); err != nil { + var tc *net.TCPConn + tc, err = tl.AcceptTCP() + if err == nil { + if err := tc.SetKeepAlive(s.TCPKeepalive); err != nil { tc.Close() //nolint:errcheck return nil, err } + if s.TCPKeepalivePeriod > 0 { + if err := tc.SetKeepAlivePeriod(s.TCPKeepalivePeriod); err != nil { + tc.Close() //nolint:errcheck + return nil, err + } + } + c = tc } - c = tc } else { c, err = ln.Accept() }