[Bf-blender-cvs] [3e8bd1f6e47] blender-v3.3-release: Fix T100040: Crash when transform applied on multi-user image

Pratik Borhade noreply at git.blender.org
Mon Aug 1 17:16:45 CEST 2022


Commit: 3e8bd1f6e479fd5dad5d75af59ceb929e7017114
Author: Pratik Borhade
Date:   Mon Aug 1 17:07:56 2022 +0200
Branches: blender-v3.3-release
https://developer.blender.org/rB3e8bd1f6e479fd5dad5d75af59ceb929e7017114

Fix T100040: Crash when transform applied on multi-user image

Affected by rB8621fdb10dc4
Crash if single-user data is created when we apply transform
on multi-user image data. Crash occurs because creation of new copy
was not handled in `single_obdata_users` for empty objects (image for example)

Reviewed By: dfelinto, mont29

Maniphest Tasks: T100040

Differential Revision: https://developer.blender.org/D15587

===================================================================

M	source/blender/editors/object/object_relations.c

===================================================================

diff --git a/source/blender/editors/object/object_relations.c b/source/blender/editors/object/object_relations.c
index 01042824aac..f136d3302df 100644
--- a/source/blender/editors/object/object_relations.c
+++ b/source/blender/editors/object/object_relations.c
@@ -1830,6 +1830,11 @@ static void single_obdata_users(
         DEG_id_tag_update(&ob->id, ID_RECALC_GEOMETRY);
 
         switch (ob->type) {
+          case OB_EMPTY:
+            ob->data = ID_NEW_SET(
+                ob->data,
+                BKE_id_copy_ex(bmain, ob->data, NULL, LIB_ID_COPY_DEFAULT | LIB_ID_COPY_ACTIONS));
+            break;
           case OB_LAMP:
             ob->data = la = ID_NEW_SET(
                 ob->data,



More information about the Bf-blender-cvs mailing list