[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60518] trunk/blender/source/blender/ python/intern/bpy_operator_wrap.c: fix [#36924] Calling .define(...) on Macro subclass crashes Blender, if subclass wasn't registered

Campbell Barton ideasman42 at gmail.com
Thu Oct 3 07:27:39 CEST 2013


Revision: 60518
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60518
Author:   campbellbarton
Date:     2013-10-03 05:27:39 +0000 (Thu, 03 Oct 2013)
Log Message:
-----------
fix [#36924] Calling .define(...) on Macro subclass crashes Blender, if subclass wasn't registered

Modified Paths:
--------------
    trunk/blender/source/blender/python/intern/bpy_operator_wrap.c

Modified: trunk/blender/source/blender/python/intern/bpy_operator_wrap.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_operator_wrap.c	2013-10-03 04:31:41 UTC (rev 60517)
+++ trunk/blender/source/blender/python/intern/bpy_operator_wrap.c	2013-10-03 05:27:39 UTC (rev 60518)
@@ -177,14 +177,17 @@
 	}
 
 	/* identifiers */
-	srna = srna_from_self(macro, "Macro Define:");
+	srna = pyrna_struct_as_srna((PyObject *)macro, false, "Macro Define:");
+	if (srna == NULL) {
+		return NULL;
+	}
+
 	macroname = RNA_struct_identifier(srna);
-
 	ot = WM_operatortype_find(macroname, true);
 
 	if (!ot) {
 		PyErr_Format(PyExc_ValueError,
-		             "Macro Define: '%s' is not a valid macro or hasn't been registered yet",
+		             "Macro Define: '%s' is not a valid macro",
 		             macroname);
 		return NULL;
 	}




More information about the Bf-blender-cvs mailing list