From 22b501c7917e8e209aab2dee02101286b7ecc45f Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sun, 3 May 2009 09:21:58 +0000 Subject: fixes for bugs submitted by BGE users, fixes by myself and Mitchell Stokes - when the attribute check function failed it didnt set an error raising a SystemError instead - Rasterizer.getMaterialMode would never return KX_BLENDER_MULTITEX_MATERIAL - PropertySensor value attribute checking function was always returning a fail. - Vertex Self Shadow python script didnt update for meshes with modifiers. --- source/gameengine/Expressions/PyObjectPlus.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'source/gameengine/Expressions') diff --git a/source/gameengine/Expressions/PyObjectPlus.cpp b/source/gameengine/Expressions/PyObjectPlus.cpp index e6b49332273..107b12b7159 100644 --- a/source/gameengine/Expressions/PyObjectPlus.cpp +++ b/source/gameengine/Expressions/PyObjectPlus.cpp @@ -519,6 +519,10 @@ int PyObjectPlus::py_set_attrdef(void *self, const PyAttributeDef *attrdef, PyOb { if ((*attrdef->m_checkFunction)(self, attrdef) != 0) { + // if the checing function didnt set an error then set a generic one here so we dont set an error with no exception + if (PyErr_Occurred()==0) + PyErr_Format(PyExc_AttributeError, "type check error for attribute \"%s\", reasion unknown", attrdef->m_name); + // post check returned an error, restore values UNDO_AND_ERROR: if (undoBuffer) -- cgit v1.2.3