diff options
Diffstat (limited to 'libpyside/signalmanager.cpp')
-rw-r--r-- | libpyside/signalmanager.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libpyside/signalmanager.cpp b/libpyside/signalmanager.cpp index 8208796b2..3724500d5 100644 --- a/libpyside/signalmanager.cpp +++ b/libpyside/signalmanager.cpp @@ -22,6 +22,7 @@ #include "signalmanager.h" #include "qproperty.h" +#include "pyside.h" #include <QHash> #include <QStringList> @@ -223,6 +224,11 @@ struct SignalManager::SignalManagerPrivate GlobalReceiver m_globalReceiver; }; +static void clearSignalManager() +{ + PySide::SignalManager::instance().clear(); +} + SignalManager::SignalManager() : m_d(new SignalManagerPrivate) { // Register Qt primitive typedefs used on signals. @@ -234,6 +240,7 @@ SignalManager::SignalManager() : m_d(new SignalManagerPrivate) TypeResolver::createValueTypeResolver<PyObjectWrapper>(PYTHON_TYPE); TypeResolver::createValueTypeResolver<PyObjectWrapper>("object"); TypeResolver::createValueTypeResolver<PyObjectWrapper>("PySide::PyObjectWrapper"); + PySide::registerCleanupFunction(clearSignalManager); } void SignalManager::clear() |