From b9be0cadadda93158e07c8d5e205a6795aa55e42 Mon Sep 17 00:00:00 2001
From: Alex Sharov <AskAlexSharov@gmail.com>
Date: Sat, 3 Jul 2021 14:03:27 +0700
Subject: [PATCH] don't stop iterate over peers on error (#2274)

---
 cmd/sentry/download/sentry.go | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/cmd/sentry/download/sentry.go b/cmd/sentry/download/sentry.go
index c5bec9189f..9db1ff1ac7 100644
--- a/cmd/sentry/download/sentry.go
+++ b/cmd/sentry/download/sentry.go
@@ -743,7 +743,7 @@ func (ss *SentryServerImpl) SendMessageToRandomPeers(ctx context.Context, req *p
 		amount++
 		return true
 	})
-	if req.MaxPeers > amount {
+	if req.MaxPeers < amount {
 		amount = req.MaxPeers
 	}
 
@@ -762,11 +762,11 @@ func (ss *SentryServerImpl) SendMessageToRandomPeers(ctx context.Context, req *p
 			peerInfo.Remove()
 			ss.Peers.Delete(peerID)
 			innerErr = err
-			return false
+			return true
 		}
 		reply.Peers = append(reply.Peers, gointerfaces.ConvertBytesToH512([]byte(peerID)))
 		i++
-		return sendToAmount <= i
+		return i < sendToAmount
 	})
 	if innerErr != nil {
 		return reply, fmt.Errorf("sendMessageToRandomPeers to peer %w", innerErr)
@@ -792,7 +792,7 @@ func (ss *SentryServerImpl) SendMessageToAll(ctx context.Context, req *proto_sen
 			peerInfo.Remove()
 			ss.Peers.Delete(peerID)
 			innerErr = err
-			return false
+			return true
 		}
 		reply.Peers = append(reply.Peers, gointerfaces.ConvertBytesToH512([]byte(peerID)))
 		return true
-- 
GitLab