diff options
-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( |