Fix T46232: Boids crash w/ random rule selection

This commit is contained in:
Campbell Barton 2015-09-24 16:07:30 +10:00 committed by Sergey Sharybin
parent 34bcd2f0ea
commit eae90798b6
1 changed files with 5 additions and 3 deletions

View File

@ -1006,9 +1006,11 @@ void boid_brain(BoidBrainData *bbd, int p, ParticleData *pa)
case eBoidRulesetType_Random:
{
/* use random rule for each particle (always same for same particle though) */
rule = BLI_findlink(&state->rules, rand % BLI_listbase_count(&state->rules));
apply_boid_rule(bbd, rule, &val, pa, -1.0);
const int n = BLI_listbase_count(&state->rules);
if (n) {
rule = BLI_findlink(&state->rules, rand % n);
apply_boid_rule(bbd, rule, &val, pa, -1.0);
}
break;
}
case eBoidRulesetType_Average: