aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRenato Filho <renato.filho@openbossa.org>2011-09-07 11:47:16 -0300
committerHugo Parente Lima <hugo.pl@gmail.com>2012-03-08 16:54:51 -0300
commitf16a241b13fa09e5243c6fd88b02fc76d3f39e48 (patch)
treed7d463c4afe4ee96ad60bd71480bdd200cdbb6a7
parentf7b0dca2cb79d9926e7fbd74f39fca8d4d3751bb (diff)
Fixed segfault during the connection fail.
Reviewed by: Hugo Parente <hugo.lima@openbossa.org> Lauro Neto <lauro.neto@openbossa.org>
-rw-r--r--libpyside/pysidesignal.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/libpyside/pysidesignal.cpp b/libpyside/pysidesignal.cpp
index 3308035a4..084fcef91 100644
--- a/libpyside/pysidesignal.cpp
+++ b/libpyside/pysidesignal.cpp
@@ -378,10 +378,10 @@ PyObject* signalInstanceConnect(PyObject* self, PyObject* args, PyObject* kwds)
if (result == Py_True)
return result;
else
- Py_DECREF(result);
+ Py_XDECREF(result);
}
-
- PyErr_Format(PyExc_RuntimeError, "Fail to connect signal %s.", source->d->signature);
+ if (!PyErr_Occurred())
+ PyErr_Format(PyExc_RuntimeError, "Fail to connect signal %s.", source->d->signature);
return 0;
}