diff --git a/src/plugins/projectexplorer/miniprojecttargetselector.cpp b/src/plugins/projectexplorer/miniprojecttargetselector.cpp index ba78e46eb06..17a312e9710 100644 --- a/src/plugins/projectexplorer/miniprojecttargetselector.cpp +++ b/src/plugins/projectexplorer/miniprojecttargetselector.cpp @@ -549,13 +549,20 @@ KitAreaWidget::KitAreaWidget(QWidget *parent) : QWidget(parent), m_layout(new QGridLayout(this)), m_kit(0) { m_layout->setMargin(3); +} + +KitAreaWidget::~KitAreaWidget() +{ setKit(0); } void KitAreaWidget::setKit(Kit *k) { + if (k == m_kit) + return; + foreach (KitConfigWidget *w, m_widgets) - w->deleteLater(); + delete(w); m_widgets.clear(); foreach (QLabel *l, m_labels) l->deleteLater(); diff --git a/src/plugins/projectexplorer/miniprojecttargetselector.h b/src/plugins/projectexplorer/miniprojecttargetselector.h index a13e30dab68..ad91702371c 100644 --- a/src/plugins/projectexplorer/miniprojecttargetselector.h +++ b/src/plugins/projectexplorer/miniprojecttargetselector.h @@ -95,6 +95,7 @@ class KitAreaWidget : public QWidget Q_OBJECT public: explicit KitAreaWidget(QWidget *parent = 0); + ~KitAreaWidget(); public slots: void setKit(ProjectExplorer::Kit *k);