[NOD-1542] Don't try to return more addresses then we have (#1097)

* [NOD-1542] Don't try to return more addresses then we have

* [NOD-1542] Allocate according to updated count
This commit is contained in:
Svarog 2020-11-17 15:28:01 +02:00
parent c785ca0e52
commit d4993c1d06

View File

@ -31,12 +31,15 @@ func (amc *AddressRandomize) RandomAddress(addresses []*appmessage.NetAddress) *
// RandomAddresses returns count addresses at random from input list
func (amc *AddressRandomize) RandomAddresses(addresses []*appmessage.NetAddress, count int) []*appmessage.NetAddress {
if len(addresses) < count {
count = len(addresses)
}
result := make([]*appmessage.NetAddress, 0, count)
if len(addresses) > 0 {
randomIndexes := rand.Perm(len(addresses))
for i := 0; i < count; i++ {
result = append(result, addresses[randomIndexes[i]])
}
randomIndexes := rand.Perm(len(addresses))
for i := 0; i < count; i++ {
result = append(result, addresses[randomIndexes[i]])
}
return result