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:
authorSergey Sharybin <sergey.vfx@gmail.com>2016-10-24 11:09:13 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-10-24 13:34:02 +0300
commit452d43b1c8c53d1aee5373501fe62f02e3b3376d (patch)
treef9026eb483347af3b24d4c272f9242ef2c2f9248
parent602b2dbd8cd7930a379ea451b47fb9f8d2bc3cf2 (diff)
Fix T49827L Crash linking material while in Material viewport shading mode
Material linking might and does change the way how drawObject is calculated but does not tag drawObject for recalculation in any way. Now use dependency graph to tag draw object for reclaculation. Currently do this using OB_RECALC_DATA taq since tagging is not very granular yet. In the future we can introduce ore granular tagging in the new dependency graph easily. Simple and safe for 2.78a.
-rw-r--r--source/blender/editors/object/object_relations.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/editors/object/object_relations.c b/source/blender/editors/object/object_relations.c
index 82c6a14eb7f..35d7b328291 100644
--- a/source/blender/editors/object/object_relations.c
+++ b/source/blender/editors/object/object_relations.c
@@ -1575,7 +1575,7 @@ static int make_links_data_exec(bContext *C, wmOperator *op)
Material *ma = give_current_material(ob_src, a + 1);
assign_material(ob_dst, ma, a + 1, BKE_MAT_ASSIGN_USERPREF); /* also works with ma==NULL */
}
- DAG_id_tag_update(&ob_dst->id, 0);
+ DAG_id_tag_update(&ob_dst->id, OB_RECALC_DATA);
break;
case MAKE_LINKS_ANIMDATA:
BKE_animdata_copy_id((ID *)ob_dst, (ID *)ob_src, false);