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>2019-01-10 18:45:38 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2019-01-10 18:47:41 +0300
commit41b65d9a8ed7f95b6851e6c6e1ef55d52961107d (patch)
tree535fbae5280842abd10d5a5981c2dcd2ced28e62 /source/blender/blenkernel/intern/DerivedMesh.c
parente31a5a4c62bc3903eb037c87c8b261ebfaba8e8f (diff)
Fix T59631: Crash in Surface Deform modifier Bind when Dynamic Paint is included.
We should *never* prevent copying basic mesh CDLayers (vertices etc.), that does not make sense. I guess issue was not in old DM because geometry was duplicated anyway, and in 'normal' modifier stack eval, probably because bare mesh was awlays requested? But we should not have to be explicit here about it.
Diffstat (limited to 'source/blender/blenkernel/intern/DerivedMesh.c')
-rw-r--r--source/blender/blenkernel/intern/DerivedMesh.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c
index b2fe4ff742e..8428bc580d4 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.c
+++ b/source/blender/blenkernel/intern/DerivedMesh.c
@@ -1170,7 +1170,7 @@ static void mesh_calc_modifiers(
ModifierData *firstmd, *md, *previewmd = NULL;
CDMaskLink *datamasks, *curr;
/* XXX Always copying POLYINDEX, else tessellated data are no more valid! */
- CustomDataMask mask, nextmask, previewmask = 0, append_mask = CD_MASK_ORIGINDEX;
+ CustomDataMask mask, nextmask, previewmask = 0, append_mask = CD_MASK_ORIGINDEX | CD_MASK_BAREMESH;
float (*deformedVerts)[3] = NULL;
int numVerts = ((Mesh *)ob->data)->totvert;
const bool useRenderParams = (DEG_get_mode(depsgraph) == DAG_EVAL_RENDER);
@@ -1688,7 +1688,7 @@ static void editbmesh_calc_modifiers(
{
ModifierData *md;
float (*deformedVerts)[3] = NULL;
- CustomDataMask mask = 0, append_mask = 0;
+ CustomDataMask mask = 0, append_mask = CD_MASK_BAREMESH;
int i, numVerts = 0, cageIndex = modifiers_getCageIndex(scene, ob, NULL, 1);
CDMaskLink *datamasks, *curr;
const int required_mode = eModifierMode_Realtime | eModifierMode_Editmode;