[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30421] trunk/blender/source/blender/ makesrna/intern/makesrna.c: fix for assigning any ID in rna, it would not run id_lib_extern() which means the library reference would be lost on reload.
Campbell Barton
ideasman42 at gmail.com
Sat Jul 17 00:21:38 CEST 2010
Revision: 30421
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30421
Author: campbellbarton
Date: 2010-07-17 00:21:37 +0200 (Sat, 17 Jul 2010)
Log Message:
-----------
fix for assigning any ID in rna, it would not run id_lib_extern() which means the library reference would be lost on reload.
Modified Paths:
--------------
trunk/blender/source/blender/makesrna/intern/makesrna.c
Modified: trunk/blender/source/blender/makesrna/intern/makesrna.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/makesrna.c 2010-07-16 21:42:20 UTC (rev 30420)
+++ trunk/blender/source/blender/makesrna/intern/makesrna.c 2010-07-16 22:21:37 UTC (rev 30421)
@@ -628,6 +628,14 @@
fprintf(f, " if(value.data)\n");
fprintf(f, " id_us_plus((ID*)value.data);\n\n");
}
+ else {
+ PointerPropertyRNA *pprop= (PointerPropertyRNA*)dp->prop;
+ StructRNA *type= rna_find_struct((char*)pprop->type);
+ if(type && (type->flag & STRUCT_ID)) {
+ fprintf(f, " if(value.data)\n");
+ fprintf(f, " id_lib_extern((ID*)value.data);\n\n");
+ }
+ }
fprintf(f, " data->%s= value.data;\n", dp->dnaname);
More information about the Bf-blender-cvs
mailing list