From 433b23b77b4551f10e0881229b200d7dd170b800 Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Tue, 29 Nov 2022 16:46:34 +0100 Subject: [PATCH] main.go: in readerLoop() bail out of function if error returned from shClient.Read is "socket closed". --- main.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index 7e91ca2..3f578a0 100644 --- a/main.go +++ b/main.go @@ -78,14 +78,21 @@ func readerLoop() { case RS_READ: err := shClient.Read() if err != nil { - log.WithError(err).Error("Failed to read from ship") - if shErr, ok := err.(shipclient.ShipClientError); ok { + + // Bail out if socket is closed + if shErr.Type == shipclient.ErrSockClosed { + log.Info("Socket closed, Exiting") + return + } + // Reconnect if shErr.Type == shipclient.ErrSockRead || shErr.Type == shipclient.ErrNotConnected { state = RS_CONNECT } } + + log.WithError(err).Error("Failed to read from ship") } } }