diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2019-02-21 17:48:29 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2019-02-21 17:48:29 +0300 |
commit | 63fd2c99e80d89805f0817b6ea9802f99d8271e7 (patch) | |
tree | 05dbfb2c2273b2fed11c9778f38c47b85be2b7ab | |
parent | 0625a10efbe4e2a61fbfcf79dbf42ae399798aea (diff) |
Fix (unreported) Broken DataTransfer modifier when source object is in Edit mode.
Just use common API func to get evaluated mesh of other object in
modifiers, instead of doing our own cooking. ;)
-rw-r--r-- | source/blender/blenkernel/intern/data_transfer.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/data_transfer.c b/source/blender/blenkernel/intern/data_transfer.c index 3e5939b4e0f..2f011d6a919 100644 --- a/source/blender/blenkernel/intern/data_transfer.c +++ b/source/blender/blenkernel/intern/data_transfer.c @@ -42,6 +42,7 @@ #include "BKE_mesh_mapping.h" #include "BKE_mesh_runtime.h" #include "BKE_mesh_remap.h" +#include "BKE_modifier.h" #include "BKE_object.h" #include "BKE_object_deform.h" #include "BKE_report.h" @@ -1114,7 +1115,7 @@ bool BKE_object_data_transfer_ex( /* Get source evaluated mesh.*/ me_src_mask |= BKE_object_data_transfer_dttypes_to_cdmask(data_types); if (is_modifier) { - me_src = ob_src->runtime.mesh_eval; + me_src = BKE_modifier_get_evaluated_mesh_from_evaluated_object(ob_src, false); if (me_src == NULL || (me_src_mask & ~ob_src->runtime.last_data_mask) != 0) { CLOG_WARN(&LOG, "Data Transfer: source mesh data is not ready - dependency cycle?"); |