Sfoglia il codice sorgente

Warning on GetRandomValue range limit (#2800)

Added a comment explaining the range limitations of GetRandomValue.
Added a run-time warning TRACELOG when GetRandomValue is called with an invalid range.
pull/2804/head
Pere001 2 anni fa
committed by GitHub
parent
commit
c8fd93d356
Non sono state trovate chiavi note per questa firma nel database ID Chiave GPG: 4AEE18F83AFDEB23
1 ha cambiato i file con 7 aggiunte e 0 eliminazioni
  1. +7
    -0
      src/rcore.c

+ 7
- 0
src/rcore.c Vedi File

@ -2816,6 +2816,13 @@ int GetRandomValue(int min, int max)
max = min;
min = tmp;
}
// WARNING: Ranges higher than RAND_MAX will return invalid results. More specifically, if (max - min) > INT_MAX there will
// be an overflow, and otherwise if (max - min) > RAND_MAX the random value will incorrectly never exceed a certain threshold.
if ((unsigned int)(max - min) > (unsigned int)RAND_MAX)
{
TRACELOG(LOG_WARNING, "Invalid GetRandomValue arguments. Range should not be higher than %i.", RAND_MAX);
}
return (rand()%(abs(max - min) + 1) + min);
}

Caricamento…
Annulla
Salva