Prevent division by zero

This commit is contained in:
NHOrus 2017-08-24 14:24:13 +03:00
parent 25424a01db
commit 17d94c46cd

View file

@ -134,8 +134,12 @@ bool is_valid(struct game_t valgame)
* valid: no states are outside minimal or maximal value * valid: no states are outside minimal or maximal value
*/ */
/* Bounds check for locations /* Prevent division by zero */
*/ if (valgame.abbnum == 0) {
return false;
}
/* Bounds check for locations */
if ( valgame.chloc < -1 || valgame.chloc > NLOCATIONS || if ( valgame.chloc < -1 || valgame.chloc > NLOCATIONS ||
valgame.chloc < -1 || valgame.chloc > NLOCATIONS || valgame.chloc < -1 || valgame.chloc > NLOCATIONS ||
valgame.loc < -1 || valgame.loc > NLOCATIONS || valgame.loc < -1 || valgame.loc > NLOCATIONS ||
@ -144,8 +148,7 @@ bool is_valid(struct game_t valgame)
valgame.oldloc < -1 || valgame.oldloc > NLOCATIONS) { valgame.oldloc < -1 || valgame.oldloc > NLOCATIONS) {
return false; return false;
} }
/* Bounds check for location arrays /* Bounds check for location arrays */
*/
for (int i = 0; i <= NDWARVES; i++) { for (int i = 0; i <= NDWARVES; i++) {
if (valgame.dloc[i] < -1 || valgame.dloc[i] > NLOCATIONS || if (valgame.dloc[i] < -1 || valgame.dloc[i] > NLOCATIONS ||
valgame.odloc[i] < -1 || valgame.odloc[i] > NLOCATIONS) { valgame.odloc[i] < -1 || valgame.odloc[i] > NLOCATIONS) {