aboutsummaryrefslogtreecommitdiffstats
path: root/libpyside
diff options
context:
space:
mode:
Diffstat (limited to 'libpyside')
-rw-r--r--libpyside/signalmanager.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/libpyside/signalmanager.cpp b/libpyside/signalmanager.cpp
index 6ab84561f..bbbc1d3f0 100644
--- a/libpyside/signalmanager.cpp
+++ b/libpyside/signalmanager.cpp
@@ -87,8 +87,13 @@ PyObjectWrapper::operator PyObject*() const
return m_me;
}
-QDataStream &operator<<(QDataStream &out, const PyObjectWrapper &myObj)
+QDataStream &operator<<(QDataStream& out, const PyObjectWrapper& myObj)
{
+ if (Py_IsInitialized() == 0) {
+ qWarning() << "Stream operator for PyObject called without python interpreter.";
+ return out;
+ }
+
static PyObject *reduce_func = 0;
Shiboken::GilState gil;
@@ -107,8 +112,13 @@ QDataStream &operator<<(QDataStream &out, const PyObjectWrapper &myObj)
return out;
}
-QDataStream &operator>>(QDataStream &in, PyObjectWrapper &myObj)
+QDataStream &operator>>(QDataStream& in, PyObjectWrapper& myObj)
{
+ if (Py_IsInitialized() == 0) {
+ qWarning() << "Stream operator for PyObject called without python interpreter.";
+ return in;
+ }
+
static PyObject *eval_func = 0;
Shiboken::GilState gil;