diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-06-04 16:24:10 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-06-04 16:24:41 +0300 |
commit | 2b22a61152769949228fa2eebc1844ee99cbd15b (patch) | |
tree | 992fc9b75167715041ded8eec042f0a5b5ada2ab /source/blender | |
parent | 52f9023fbffc709346f8adcc0145140ce158221e (diff) |
Depsgraph: Only store original mesh pointer for mesh object
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/object.c | 1 | ||||
-rw-r--r-- | source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c index 9c42cc686ea..6003b730176 100644 --- a/source/blender/blenkernel/intern/object.c +++ b/source/blender/blenkernel/intern/object.c @@ -2851,7 +2851,6 @@ Mesh *BKE_object_get_evaluated_mesh(const Depsgraph *depsgraph, Object *ob) return ob_eval->runtime.mesh_eval; } - static int pc_cmp(const void *a, const void *b) { const LinkData *ad = a, *bd = b; diff --git a/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc b/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc index 858e366b280..0f49d57a826 100644 --- a/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc +++ b/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc @@ -542,7 +542,9 @@ void update_special_pointers(const Depsgraph *depsgraph, BLI_assert(object_cow->derivedDeform == NULL); object_cow->mode = object_orig->mode; object_cow->sculpt = object_orig->sculpt; - object_cow->runtime.mesh_orig = (Mesh *)object_cow->data; + if (object_cow->type == OB_MESH) { + object_cow->runtime.mesh_orig = (Mesh *)object_cow->data; + } if (object_cow->type == OB_ARMATURE) { BKE_pose_remap_bone_pointers((bArmature *)object_cow->data, object_cow->pose); |