From 519ee151a325fdb32e7bb34352ef31940d422fc5 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 1 Mar 2014 16:25:37 +1100 Subject: Fix for memory leak in particle brush --- source/blender/editors/physics/particle_edit.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'source/blender/editors') diff --git a/source/blender/editors/physics/particle_edit.c b/source/blender/editors/physics/particle_edit.c index d9ec0cf8416..f634a512aa3 100644 --- a/source/blender/editors/physics/particle_edit.c +++ b/source/blender/editors/physics/particle_edit.c @@ -3337,7 +3337,7 @@ static int brush_add(PEData *data, short number) Object *ob= data->ob; PTCacheEdit *edit = data->edit; ParticleSystem *psys= edit->psys; - ParticleData *add_pars= MEM_callocN(number*sizeof(ParticleData), "ParticleData add"); + ParticleData *add_pars; ParticleSystemModifierData *psmd= psys_get_modifier(ob, psys); ParticleSimulationData sim= {0}; ParticleEditSettings *pset= PE_settings(scene); @@ -3355,6 +3355,8 @@ static int brush_add(PEData *data, short number) if (psys->flag & PSYS_GLOBAL_HAIR) return 0; + add_pars = MEM_callocN(number * sizeof(ParticleData), "ParticleData add"); + rng = BLI_rng_new_srandom(psys->seed+data->mval[0]+data->mval[1]); sim.scene= scene; @@ -3548,8 +3550,8 @@ static int brush_add(PEData *data, short number) if (tree) BLI_kdtree_free(tree); } - if (add_pars) - MEM_freeN(add_pars); + + MEM_freeN(add_pars); if (!psmd->dm->deformedOnly) dm->release(dm); -- cgit v1.2.3