diff --git a/server/gateway.go b/server/gateway.go index 2e7001bf..a6bdbd4d 100644 --- a/server/gateway.go +++ b/server/gateway.go @@ -697,10 +697,10 @@ func (s *Server) createGateway(cfg *gatewayCfg, url *url.URL, conn net.Conn) { } // Spin up the read loop. - s.startGoRoutine(c.readLoop) + s.startGoRoutine(func() { c.readLoop() }) // Spin up the write loop. - s.startGoRoutine(c.writeLoop) + s.startGoRoutine(func() { c.writeLoop() }) if tlsRequired { c.Debugf("TLS handshake complete") diff --git a/server/route.go b/server/route.go index 8c2ef507..408f984c 100644 --- a/server/route.go +++ b/server/route.go @@ -1192,10 +1192,10 @@ func (s *Server) createRoute(conn net.Conn, rURL *url.URL) *client { } // Spin up the read loop. - s.startGoRoutine(c.readLoop) + s.startGoRoutine(func() { c.readLoop() }) // Spin up the write loop. - s.startGoRoutine(c.writeLoop) + s.startGoRoutine(func() { c.writeLoop() }) if tlsRequired { c.Debugf("TLS handshake complete") diff --git a/server/server.go b/server/server.go index ca2d54b2..b510f261 100644 --- a/server/server.go +++ b/server/server.go @@ -1529,10 +1529,10 @@ func (s *Server) createClient(conn net.Conn) *client { c.setPingTimer() // Spin up the read loop. - s.startGoRoutine(c.readLoop) + s.startGoRoutine(func() { c.readLoop() }) // Spin up the write loop. - s.startGoRoutine(c.writeLoop) + s.startGoRoutine(func() { c.writeLoop() }) if info.TLSRequired { c.Debugf("TLS handshake complete")