diff --git a/internal/multiplex/switchboard.go b/internal/multiplex/switchboard.go index 270b4ac..a67e3d2 100644 --- a/internal/multiplex/switchboard.go +++ b/internal/multiplex/switchboard.go @@ -76,8 +76,12 @@ func (sb *switchboard) send(data []byte, connId *uint32) (int, error) { return 0, errBrokenSwitchboard } newConnId := rand.Intn(len(sb.conns)) - conn = sb.conns[uint32(newConnId)] - return conn.Write(data) + conn, ok = sb.conns[uint32(newConnId)] + if !ok { + return 0, errBrokenSwitchboard + } else { + return conn.Write(data) + } } }