diff options
author | Jason McCampbell (Enthought, Inc) <jmccampbell@enthought.com> | 2012-03-15 16:03:46 -0500 |
---|---|---|
committer | Hugo Parente Lima <hugo.lima@openbossa.org> | 2012-04-19 01:06:40 +0200 |
commit | c0c336399c0e30b1d7de52980b48c1ff0043860a (patch) | |
tree | b6acdc10e823d9bb4d0c6d2524865381d5f00676 /libpyside/globalreceiver.cpp | |
parent | 6f93c2029e9f076de1be7d8f674b3c99f664d0a1 (diff) |
Bug pyside-35: GIL was not acquired in several important places.
Change-Id: I876732f90690d9679537611e9a71e33aa3a4e4e3
Reviewed-by: Hugo Parente Lima <hugo.lima@openbossa.org>
Diffstat (limited to 'libpyside/globalreceiver.cpp')
-rw-r--r-- | libpyside/globalreceiver.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libpyside/globalreceiver.cpp b/libpyside/globalreceiver.cpp index ace1692e3..5639c3d52 100644 --- a/libpyside/globalreceiver.cpp +++ b/libpyside/globalreceiver.cpp @@ -71,6 +71,8 @@ using namespace PySide; DynamicSlotData::DynamicSlotData(int id, PyObject* callback, GlobalReceiver* parent) : m_id(id), m_pythonSelf(0), m_pyClass(0), m_weakRef(0), m_parent(parent) { + Shiboken::GilState gil; + m_isMethod = PyMethod_Check(callback); if (m_isMethod) { //Can not store calback pointe because this will be destroyed at the end of the scope @@ -97,6 +99,7 @@ PyObject* DynamicSlotData::call(PyObject* args) PyObject* callback = m_callback; //create a callback based on method data + Shiboken::GilState gil; if (m_isMethod) #ifdef IS_PY3K callback = PyMethod_New(callback, m_pythonSelf); |