diff options
author | Renato Filho <renato.filho@openbossa.org> | 2011-03-21 10:08:04 -0300 |
---|---|---|
committer | Hugo Parente Lima <hugo.pl@gmail.com> | 2012-03-08 16:54:04 -0300 |
commit | 258995d03cd0cf81288917e073056d64844c003d (patch) | |
tree | 87c8e555e784ab79004d2141f2752727e03bcddd | |
parent | 120ace2cf9af79157035c266d7fbe27d9a09f76c (diff) |
Does not use normalizeSignature in functions with return type.
Fix bug #726.
Reviewer: Luciano Wolf <luciano.wolf@openbossa.org>
Lauro Moura <lauro.neto@openbossa.org>
-rw-r--r-- | libpyside/pysideslot.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libpyside/pysideslot.cpp b/libpyside/pysideslot.cpp index 28c6ed6a3..18c044bce 100644 --- a/libpyside/pysideslot.cpp +++ b/libpyside/pysideslot.cpp @@ -153,13 +153,15 @@ PyObject* slotCall(PyObject* self, PyObject* args, PyObject* kw) data->slotName = strdup(PyString_AS_STRING(funcName)); } - QString signature; - signature.sprintf("%s %s(%s)", data->resultType, data->slotName, data->args); + QByteArray returnType = QMetaObject::normalizedType(data->resultType); + QByteArray signature = QString().sprintf("%s(%s)", data->slotName, data->args).toAscii(); + signature = returnType + " " + signature; + if (!pySlotName) pySlotName = PyString_FromString(PYSIDE_SLOT_LIST_ATTR); - PyObject *pySignature = PyString_FromString(QMetaObject::normalizedSignature(signature.toAscii())); + PyObject *pySignature = PyString_FromString(signature); PyObject *signatureList = 0; if (PyObject_HasAttr(callback, pySlotName)) { signatureList = PyObject_GetAttr(callback, pySlotName); |