From 44ecc235fd7671fa5265465be28c7d50e6f466b4 2009-05-21 19:25:55 From: florianlink Date: 2009-05-21 19:25:55 Subject: [PATCH] moved check if a property can be set which was done to early git-svn-id: svn://svn.code.sf.net/p/pythonqt/code/trunk@84 ea8d5007-eb21-0410-b261-ccb3ea6e24a9 --- diff --git a/src/PythonQtInstanceWrapper.cpp b/src/PythonQtInstanceWrapper.cpp index 6ccafdf..a2747ea 100644 --- a/src/PythonQtInstanceWrapper.cpp +++ b/src/PythonQtInstanceWrapper.cpp @@ -316,14 +316,15 @@ static int PythonQtInstanceWrapper_setattro(PyObject *obj,PyObject *name,PyObjec if ((attributeName = PyString_AsString(name)) == NULL) return -1; - if (!wrapper->_obj) { - error = QString("Trying to set attribute '") + attributeName + "' on a destroyed " + wrapper->classInfo()->className() + " object"; - PyErr_SetString(PyExc_AttributeError, error.toLatin1().data()); - return -1; - } - PythonQtMemberInfo member = wrapper->classInfo()->member(attributeName); if (member._type == PythonQtMemberInfo::Property) { + + if (!wrapper->_obj) { + error = QString("Trying to set property '") + attributeName + "' on a destroyed " + wrapper->classInfo()->className() + " object"; + PyErr_SetString(PyExc_AttributeError, error.toLatin1().data()); + return -1; + } + QMetaProperty prop = member._property; if (prop.isWritable()) { QVariant v;