From 4e4ff72d13f4e0cae3ee75e944c1eb836285c009 Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Sun, 1 May 2016 15:36:09 +0200 Subject: [PATCH] Fix T48325: Data transfer modifier vertex group selector doesn't work with freestyle data. Freestyle edge/face marks are (afaik) our only actual customdata bitflags... Original work kinda assumed we had no such things. :P --- source/blender/blenkernel/intern/data_transfer.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/source/blender/blenkernel/intern/data_transfer.c b/source/blender/blenkernel/intern/data_transfer.c index 1dcacc3ae0a..7292ed2b5c5 100644 --- a/source/blender/blenkernel/intern/data_transfer.c +++ b/source/blender/blenkernel/intern/data_transfer.c @@ -459,9 +459,18 @@ static void data_transfer_layersmapping_add_item_cd( ListBase *r_map, const int cddata_type, const int mix_mode, const float mix_factor, const float *mix_weights, void *data_src, void *data_dst, cd_datatransfer_interp interp, void *interp_data) { + uint64_t data_flag = 0; + + if (cddata_type == CD_FREESTYLE_EDGE) { + data_flag = FREESTYLE_EDGE_MARK; + } + else if (cddata_type == CD_FREESTYLE_FACE) { + data_flag = FREESTYLE_FACE_MARK; + } + data_transfer_layersmapping_add_item( r_map, cddata_type, mix_mode, mix_factor, mix_weights, data_src, data_dst, - 0, 0, 0, 0, 0, 0, interp, interp_data); + 0, 0, 0, 0, 0, data_flag, interp, interp_data); } /* Note: All those layer mapping handlers return false *only* if they were given invalid parameters.