[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25740] trunk/blender/source/blender/ python/intern/bpy_rna.c: fix for bpyob.foreach_set(), when the list is empty
Campbell Barton
ideasman42 at gmail.com
Tue Jan 5 14:55:51 CET 2010
Revision: 25740
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25740
Author: campbellbarton
Date: 2010-01-05 14:55:51 +0100 (Tue, 05 Jan 2010)
Log Message:
-----------
fix for bpyob.foreach_set(), when the list is empty
Modified Paths:
--------------
trunk/blender/source/blender/python/intern/bpy_rna.c
Modified: trunk/blender/source/blender/python/intern/bpy_rna.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_rna.c 2010-01-05 12:14:18 UTC (rev 25739)
+++ trunk/blender/source/blender/python/intern/bpy_rna.c 2010-01-05 13:55:51 UTC (rev 25740)
@@ -2241,6 +2241,7 @@
*attr_tot= 0;
*attr_signed= FALSE;
+ /* note: this is fail with zero length lists, so dont let this get caled in that case */
RNA_PROP_BEGIN(&self->ptr, itemptr, self->prop) {
prop = RNA_struct_find_property(&itemptr, attr);
*raw_type= RNA_property_raw_type(prop);
@@ -2297,7 +2298,9 @@
#endif
}
- if (*size == 0) {
+ /* check 'attr_tot' otherwise we dont know if any values were set
+ * this isnt ideal because it means running on an empty list may fail silently when its not compatible. */
+ if (*size == 0 && *attr_tot != 0) {
PyErr_SetString( PyExc_AttributeError, "attribute does not support foreach method" );
return -1;
}
More information about the Bf-blender-cvs
mailing list