From 9cdddd949e39a3cf4e43eaca85f6c6581b7e104f Mon Sep 17 00:00:00 2001
From: Tobias Hunger <tobias.hunger@nokia.com>
Date: Fri, 5 Mar 2010 12:12:21 +0100
Subject: [PATCH] Fix memory leak

Reviewed-by: Friedemann Kleint
---
 src/plugins/qt4projectmanager/wizards/qtwizard.cpp | 8 ++++++++
 src/plugins/qt4projectmanager/wizards/qtwizard.h   | 1 +
 2 files changed, 9 insertions(+)

diff --git a/src/plugins/qt4projectmanager/wizards/qtwizard.cpp b/src/plugins/qt4projectmanager/wizards/qtwizard.cpp
index 240de4d3c79..ce200c9cf82 100644
--- a/src/plugins/qt4projectmanager/wizards/qtwizard.cpp
+++ b/src/plugins/qt4projectmanager/wizards/qtwizard.cpp
@@ -183,6 +183,14 @@ BaseQt4ProjectWizardDialog::BaseQt4ProjectWizardDialog(bool showModulesPage,
     init(showModulesPage);
 }
 
+BaseQt4ProjectWizardDialog::~BaseQt4ProjectWizardDialog()
+{
+    if (m_targetsPage && !m_targetsPage->parent())
+        delete m_targetsPage;
+    if (m_modulesPage && !m_modulesPage->parent())
+        delete m_modulesPage;
+}
+
 void BaseQt4ProjectWizardDialog::init(bool showModulesPage)
 {
     QtVersionManager *vm = QtVersionManager::instance();
diff --git a/src/plugins/qt4projectmanager/wizards/qtwizard.h b/src/plugins/qt4projectmanager/wizards/qtwizard.h
index dbbe5d038c1..74e06d2f2fd 100644
--- a/src/plugins/qt4projectmanager/wizards/qtwizard.h
+++ b/src/plugins/qt4projectmanager/wizards/qtwizard.h
@@ -100,6 +100,7 @@ protected:
                                         Utils::ProjectIntroPage *introPage,
                                         int introId = -1,
                                         QWidget *parent = 0);
+    virtual ~BaseQt4ProjectWizardDialog();
 
     int addModulesPage(int id = -1);
     int addTargetsPage(QSet<QString> targets = QSet<QString>(), int id = -1);
-- 
GitLab