Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2016-03-13 20:21:30 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2016-03-13 20:21:30 +0300
commit34fe03c7f25cd06876a79af418ced9f4cfa91226 (patch)
treea5d26b842dff3c9f81e8ab8add3228d2119cec53 /source/blender/blenkernel/intern/boids.c
parented28134f71e2a23aee5818dcb52974930b27de1d (diff)
Fix T47773: Particle System with Boids Crash.
Problem was, during initialization of boids particles in `dynamics_step()`, psys of target objects was not obtained with generic `psys_get_target_system()` as later in code, which could lead to some uninitialized `psys->tree` usage... Think it's safe enough for 2.77, though not a regression.
Diffstat (limited to 'source/blender/blenkernel/intern/boids.c')
-rw-r--r--source/blender/blenkernel/intern/boids.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/boids.c b/source/blender/blenkernel/intern/boids.c
index 7ce61ec6fab..b4bc83bf94c 100644
--- a/source/blender/blenkernel/intern/boids.c
+++ b/source/blender/blenkernel/intern/boids.c
@@ -310,6 +310,7 @@ static int rule_avoid_collision(BoidRule *rule, BoidBrainData *bbd, BoidValues *
ParticleSystem *epsys = psys_get_target_system(bbd->sim->ob, pt);
if (epsys) {
+ BLI_assert(epsys->tree != NULL);
neighbors = BLI_kdtree_range_search__normal(
epsys->tree, pa->prev_state.co, pa->prev_state.ave,
&ptn, acbr->look_ahead * len_v3(pa->prev_state.vel));