[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31451] trunk/blender/source/blender: - pyrna fix for reference counting when unable to register a property

Campbell Barton ideasman42 at gmail.com
Thu Aug 19 07:58:23 CEST 2010


Revision: 31451
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31451
Author:   campbellbarton
Date:     2010-08-19 07:58:22 +0200 (Thu, 19 Aug 2010)

Log Message:
-----------
- pyrna fix for reference counting when unable to register a property
- added modified 'Warp' enum to reserve this ID for durian files until the modifier is merged.

Modified Paths:
--------------
    trunk/blender/source/blender/makesdna/DNA_modifier_types.h
    trunk/blender/source/blender/python/intern/bpy_rna.c

Modified: trunk/blender/source/blender/makesdna/DNA_modifier_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_modifier_types.h	2010-08-18 23:59:26 UTC (rev 31450)
+++ trunk/blender/source/blender/makesdna/DNA_modifier_types.h	2010-08-19 05:58:22 UTC (rev 31451)
@@ -66,6 +66,9 @@
 	eModifierType_ShapeKey,
 	eModifierType_Solidify,
 	eModifierType_Screw,
+	/* placeholder, keep this so durian files load in
+	 * trunk with the correct modifier once its merged */
+	eModifierType_Warp,
 	NUM_MODIFIER_TYPES
 } ModifierType;
 

Modified: trunk/blender/source/blender/python/intern/bpy_rna.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_rna.c	2010-08-18 23:59:26 UTC (rev 31450)
+++ trunk/blender/source/blender/python/intern/bpy_rna.c	2010-08-19 05:58:22 UTC (rev 31451)
@@ -4372,7 +4372,6 @@
 
 			if(*_PyUnicode_AsString(key)=='_') {
 				PyErr_Format(PyExc_ValueError, "bpy_struct \"%.200s\" registration error: %.200s could not register because the property starts with an '_'\n", RNA_struct_identifier(srna), _PyUnicode_AsString(key));
-				Py_DECREF(dummy_args);
 				return -1;
 			}
 			pyfunc = PyCapsule_GetPointer(py_func_ptr, NULL);
@@ -4393,8 +4392,6 @@
 
 				// PyLineSpit();
 				PyErr_Format(PyExc_ValueError, "bpy_struct \"%.200s\" registration error: %.200s could not register\n", RNA_struct_identifier(srna), _PyUnicode_AsString(key));
-
-				Py_DECREF(dummy_args);
 				return -1;
 			}
 		}
@@ -4423,9 +4420,6 @@
 
 	order= PyDict_GetItemString(class_dict, "order");
 
-	if(order==NULL)
-		PyErr_Clear();
-
 	if(order && PyList_Check(order)) {
 		for(pos= 0; pos<PyList_GET_SIZE(order); pos++) {
 			key= PyList_GET_ITEM(order, pos);





More information about the Bf-blender-cvs mailing list