diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2019-01-28 23:48:09 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2019-01-28 23:49:23 +0300 |
commit | 5537117366db2a1af118a06ac89ba223de8c690e (patch) | |
tree | ff74aaf159ad51d79a7b653538005eb7900cb208 /source/blender/modifiers/intern/MOD_multires.c | |
parent | 147e22ef700124dcbaa5576b72a2a77e73adf350 (diff) |
Fix several missing cases of copy func for modifiers.
Any time a modifier data has non-ID pointer, it should have own copy
function (and also take care of proper init/reset in its init callback).
Diffstat (limited to 'source/blender/modifiers/intern/MOD_multires.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_multires.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_multires.c b/source/blender/modifiers/intern/MOD_multires.c index 98f455e186c..0b29c6bb64b 100644 --- a/source/blender/modifiers/intern/MOD_multires.c +++ b/source/blender/modifiers/intern/MOD_multires.c @@ -66,6 +66,15 @@ static void initData(ModifierData *md) mmd->quality = 3; } +static void copyData(const ModifierData *md_src, ModifierData *md_dst, const int flag) +{ + MultiresModifierData *mmd_dst = (MultiresModifierData *)md_dst; + + modifier_copyData_generic(md_src, md_dst, flag); + + mmd_dst->subdiv = NULL; +} + static void freeData(ModifierData *md) { MultiresModifierData *mmd = (MultiresModifierData *) md; @@ -193,7 +202,7 @@ ModifierTypeInfo modifierType_Multires = { eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_RequiresOriginalData, - /* copyData */ modifier_copyData_generic, + /* copyData */ copyData, /* deformVerts_DM */ NULL, /* deformMatrices_DM */ NULL, |