changes for protection
This commit is contained in:
parent
2439a986a3
commit
9d224968d2
@ -144,7 +144,7 @@ void DnaManager::like(Unit unit)
|
||||
|
||||
showed++;
|
||||
|
||||
if (showed == NUM_PER_GEN && queued == NUM_PER_GEN)
|
||||
if (showed >= NUM_PER_GEN && queued >= NUM_PER_GEN) // if buffer was biger in the past showed could be more then NUM_PER_GEN so its changed to >= insted of ==
|
||||
{
|
||||
newGen();
|
||||
queued = 0;
|
||||
@ -184,6 +184,9 @@ void DnaManager::newGen()
|
||||
{
|
||||
for (auto &&i : disliked)
|
||||
{
|
||||
if (i >= NUM_PER_GEN) // out of bounds error prevention if buffer was in the past biiger then its now
|
||||
continue;
|
||||
|
||||
size_t p1 = mrand::getValue(0, liked.size() - 1, &randSeed);
|
||||
size_t p2 = mrand::getValue(0, liked.size() - 1, &randSeed);
|
||||
while (p1 == p2)
|
||||
@ -191,6 +194,9 @@ void DnaManager::newGen()
|
||||
p2 = mrand::getValue(0, liked.size(), &randSeed);
|
||||
}
|
||||
|
||||
if (p1 >= NUM_PER_GEN || p2 >= NUM_PER_GEN) // out of bounds error prevention if buffer was in the past biiger then its now
|
||||
continue;
|
||||
|
||||
p1 = liked[p1];
|
||||
p2 = liked[p2];
|
||||
Dna *p1p = &vector[p1];
|
||||
|
Loading…
x
Reference in New Issue
Block a user