aboutsummaryrefslogtreecommitdiffstats
path: root/PySide/QtCore
diff options
context:
space:
mode:
authorMarcelo Lira <marcelo.lira@openbossa.org>2010-07-27 10:01:33 -0300
committerMarcelo Lira <marcelo.lira@openbossa.org>2010-07-27 10:12:16 -0300
commit505ba23a9d63e7c6d014f3c5bd5b1cdf778aac56 (patch)
treec6999f837b79f16699988e7fd30d49144d7385d4 /PySide/QtCore
parente42133e8e715600a948831eb9c29a5437a5f4fa1 (diff)
Fixed glue code for QApplication and QCoreApplication.
The code for QApplication deletion should also invalidate the wrapper for it. Also the similar code for QCoreApplication must perform the same steps as QApplication. Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
Diffstat (limited to 'PySide/QtCore')
-rw-r--r--PySide/QtCore/glue/qcoreapplication_init.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/PySide/QtCore/glue/qcoreapplication_init.cpp b/PySide/QtCore/glue/qcoreapplication_init.cpp
index f53db030c..d9bc4cfd1 100644
--- a/PySide/QtCore/glue/qcoreapplication_init.cpp
+++ b/PySide/QtCore/glue/qcoreapplication_init.cpp
@@ -7,7 +7,9 @@ static char** QCoreApplicationArgValues;
*/
void DeleteQCoreApplicationAtExit() {
if (QCoreApplication::instance()) {
- delete QCoreApplication::instance();
+ PySide::SignalManager::instance().clear();
+ BindingManager::instance().invalidateWrapper(QCoreApplication::instance());
+ QCoreApplication::instance()->deleteLater();
for (int i = 0; i < QCoreApplicationArgCount; ++i)
delete[] QCoreApplicationArgValues[i];
}