[Bf-blender-cvs] [97f2792] temp_merge_gooseberry_hair: Fix for invalid particle pointer access in mixed particle/child loop.
Lukas Tönne
noreply at git.blender.org
Mon Jan 19 20:51:19 CET 2015
Commit: 97f27928c1c6ae27d89fc31fad96314430282294
Author: Lukas Tönne
Date: Thu Nov 20 17:15:16 2014 +0100
Branches: temp_merge_gooseberry_hair
https://developer.blender.org/rB97f27928c1c6ae27d89fc31fad96314430282294
Fix for invalid particle pointer access in mixed particle/child loop.
===================================================================
M source/blender/modifiers/intern/MOD_particleinstance.c
===================================================================
diff --git a/source/blender/modifiers/intern/MOD_particleinstance.c b/source/blender/modifiers/intern/MOD_particleinstance.c
index 3781446..171babd 100644
--- a/source/blender/modifiers/intern/MOD_particleinstance.c
+++ b/source/blender/modifiers/intern/MOD_particleinstance.c
@@ -333,6 +333,12 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
float hairmat[4][4];
float mat[3][3];
+ if (first_particle + p < psys->totpart)
+ pa = psys->particles + first_particle + p;
+ else {
+ ChildParticle *cpa = psys->child + p;
+ pa = psys->particles + cpa->parent;
+ }
psys_mat_hair_to_global(sim.ob, sim.psmd->dm, sim.psys->part->from, pa, hairmat);
copy_m3_m4(mat, hairmat);
/* to quaternion */
More information about the Bf-blender-cvs
mailing list