diff options
Diffstat (limited to 'source/blender/modifiers/intern/MOD_particlesystem.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_particlesystem.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_particlesystem.c b/source/blender/modifiers/intern/MOD_particlesystem.c index 8573ef14e09..5d7b380a751 100644 --- a/source/blender/modifiers/intern/MOD_particlesystem.c +++ b/source/blender/modifiers/intern/MOD_particlesystem.c @@ -62,8 +62,9 @@ static void freeData(ModifierData *md) /* ED_object_modifier_remove may have freed this first before calling * modifier_free (which calls this function) */ - if (psmd->psys) + if (psmd->psys) { psmd->psys->flag |= PSYS_DELETE; + } } static void copyData(const ModifierData *md, ModifierData *target, const int flag) @@ -101,13 +102,16 @@ static void deformVerts(ModifierData *md, ParticleSystem *psys = NULL; /* float cfra = BKE_scene_frame_get(md->scene); */ /* UNUSED */ - if (ctx->object->particlesystem.first) + if (ctx->object->particlesystem.first) { psys = psmd->psys; - else + } + else { return; + } - if (!psys_check_enabled(ctx->object, psys, (ctx->flag & MOD_APPLY_RENDER) != 0)) + if (!psys_check_enabled(ctx->object, psys, (ctx->flag & MOD_APPLY_RENDER) != 0)) { return; + } if (mesh_src == NULL) { mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, NULL, vertexCos, numVerts, false, true); |