[Bf-blender-cvs] [4d0d1b5936c] master: Fix T51150: user_remap on itself changes users to 0.
Bastien Montagne
noreply at git.blender.org
Mon Apr 17 22:34:48 CEST 2017
Commit: 4d0d1b5936c59b6e7ce5b3ae8b1af617cbdada61
Author: Bastien Montagne
Date: Mon Apr 17 22:33:07 2017 +0200
Branches: master
https://developer.blender.org/rB4d0d1b5936c59b6e7ce5b3ae8b1af617cbdada61
Fix T51150: user_remap on itself changes users to 0.
Remapping to itself is nonsense here (was triggering an assert in
BKE_library code actually), just make it a bail out early in RNA
callback in that case.
===================================================================
M source/blender/makesrna/intern/rna_ID.c
===================================================================
diff --git a/source/blender/makesrna/intern/rna_ID.c b/source/blender/makesrna/intern/rna_ID.c
index 6ed2c55138c..a74758a4f71 100644
--- a/source/blender/makesrna/intern/rna_ID.c
+++ b/source/blender/makesrna/intern/rna_ID.c
@@ -342,7 +342,7 @@ static void rna_ID_user_clear(ID *id)
static void rna_ID_user_remap(ID *id, Main *bmain, ID *new_id)
{
- if (GS(id->name) == GS(new_id->name)) {
+ if ((GS(id->name) == GS(new_id->name)) && (id != new_id)) {
/* For now, do not allow remapping data in linked data from here... */
BKE_libblock_remap(bmain, id, new_id, ID_REMAP_SKIP_INDIRECT_USAGE | ID_REMAP_SKIP_NEVER_NULL_USAGE);
}
More information about the Bf-blender-cvs
mailing list