diff options
author | Campbell Barton <ideasman42@gmail.com> | 2018-06-01 12:44:50 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2018-06-01 12:49:10 +0300 |
commit | e614a8290c3181e572845f34040183432afd9cd8 (patch) | |
tree | 7a46847cb2373f079c43d76c237a7d010a3e3c2c | |
parent | e8142ad7dca13930b02d413da5aa7ebd9bbcaadd (diff) |
Fix/Workaround T55272: Sculpt/VPaint removes mesh
-rw-r--r-- | source/blender/blenkernel/intern/DerivedMesh.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c index 8de4b7f741d..a3dee4bb795 100644 --- a/source/blender/blenkernel/intern/DerivedMesh.c +++ b/source/blender/blenkernel/intern/DerivedMesh.c @@ -2967,7 +2967,15 @@ static void mesh_finalize_eval(Object *object) * really happen. But since there is no reference to the report, can not * do much about this. */ - object->data = mesh_eval; + + /* Object is sometimes not evaluated! + * TODO(sergey): BAD TEMPORARY HACK FOR UNTIL WE ARE SMARTER */ + if(object->id.tag & LIB_TAG_COPY_ON_WRITE) { + object->data = mesh_eval; + } + else { + /* evaluated will be available via: 'object->runtime.mesh_eval' */ + } } static void mesh_build_data( |