Commit: 1cc8f9d463a7cffbe5a466a4d83a8070a5b8d959
Author: Bastien Montagne
Date:   Sun Mar 10 15:23:59 2019 +0100
Branches: master
https://developer.blender.org/rB1cc8f9d463a7cffbe5a466a4d83a8070a5b8d959

Fix T62393: Materials made from 'Make Single User' have linked animation.

`id_single_user()` was still code from older ID management, now we can
use modern code to handle animdata duplication for us (which allows to
keep handling of nasty sub-data ID horrors like nodtrees in a single
place, much safer and simpler).

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

M       source/blender/blenkernel/intern/library.c

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

diff --git a/source/blender/blenkernel/intern/library.c 
b/source/blender/blenkernel/intern/library.c
index 2db67939d42..52796d06a3f 100644
--- a/source/blender/blenkernel/intern/library.c
+++ b/source/blender/blenkernel/intern/library.c
@@ -770,9 +770,8 @@ bool id_single_user(bContext *C, ID *id, PointerRNA *ptr, 
PropertyRNA *prop)
                /* if property isn't editable, we're going to have an extra 
block hanging around until we save */
                if (RNA_property_editable(ptr, prop)) {
                        Main *bmain = CTX_data_main(C);
-                       if (BKE_id_copy(bmain, id, &newid) && newid) {
-                               /* copy animation actions too */
-                               BKE_animdata_copy_id_action(bmain, id, false);
+                       /* copy animation actions too */
+                       if (BKE_id_copy_ex(bmain, id, &newid, 
LIB_ID_COPY_DEFAULT | LIB_ID_COPY_ACTIONS) && newid) {
                                /* us is 1 by convention with new IDs, but 
RNA_property_pointer_set
                                 * will also increment it, decrement it here. */
                                id_us_min(newid);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to