diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2019-02-11 22:20:12 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2019-02-11 22:24:07 +0300 |
commit | 7cca0f9998a3d12e0046009c643038c9faa45767 (patch) | |
tree | 2178763ed908b018c29408268a612559fab8ad34 /source/blender/modifiers/intern/MOD_boolean.c | |
parent | d8888b2f48bc3146eeb490de4544fadd5fc37386 (diff) |
Fix T61391: MeshDeform Modifier does not work on a solidified planar mesh.
`BKE_modifier_get_evaluated_mesh_from_evaluated_object()` used by
modifiers needing access to other objects' geometry probably skipped out
of the radar when cage and final evaluated meshes were added to
BMEditMesh? In any case, we do not need to duplicate (and then free!) a
temp mesh from editdata anymore, and we can even add instead a parameter
to get cage instead of final. Also makes modifiers code a bit simpler.
Diffstat (limited to 'source/blender/modifiers/intern/MOD_boolean.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_boolean.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/source/blender/modifiers/intern/MOD_boolean.c b/source/blender/modifiers/intern/MOD_boolean.c index d26aaf622a3..d7fca5c12f3 100644 --- a/source/blender/modifiers/intern/MOD_boolean.c +++ b/source/blender/modifiers/intern/MOD_boolean.c @@ -157,14 +157,13 @@ static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx, Mes Mesh *result = mesh; Mesh *mesh_other; - bool mesh_other_free; if (bmd->object == NULL) { return result; } Object *other = DEG_get_evaluated_object(ctx->depsgraph, bmd->object); - mesh_other = BKE_modifier_get_evaluated_mesh_from_evaluated_object(other, &mesh_other_free); + mesh_other = BKE_modifier_get_evaluated_mesh_from_evaluated_object(other, false); if (mesh_other) { Object *object = ctx->object; @@ -318,10 +317,6 @@ static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx, Mes modifier_setError(md, "Cannot execute boolean operation"); } - if (mesh_other != NULL && mesh_other_free) { - BKE_id_free(NULL, mesh_other); - } - return result; } |