diff options
Diffstat (limited to 'source/blender/blenkernel/intern/object.cc')
-rw-r--r-- | source/blender/blenkernel/intern/object.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/object.cc b/source/blender/blenkernel/intern/object.cc index 403b9d353ec..41221c0e444 100644 --- a/source/blender/blenkernel/intern/object.cc +++ b/source/blender/blenkernel/intern/object.cc @@ -4186,7 +4186,11 @@ bool BKE_object_minmax_dupli(Depsgraph *depsgraph, /* pass */ } else { - BoundBox *bb = BKE_object_boundbox_get(dob->ob); + Object temp_ob = *dob->ob; + /* Do not modify the original boundbox. */ + temp_ob.runtime.bb = nullptr; + BKE_object_replace_data_on_shallow_copy(&temp_ob, dob->ob_data); + BoundBox *bb = BKE_object_boundbox_get(&temp_ob); if (bb) { int i; @@ -4198,6 +4202,8 @@ bool BKE_object_minmax_dupli(Depsgraph *depsgraph, ok = true; } + + MEM_SAFE_FREE(temp_ob.runtime.bb); } } free_object_duplilist(lb); /* does restore */ |