aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/targetsetupwidget.cpp
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2018-03-20 17:05:05 +0100
committerTobias Hunger <tobias.hunger@qt.io>2018-04-10 11:24:02 +0000
commitbfe3bdd890c87095b3633357f921d2b4f2250a71 (patch)
treeaf6b0585854feeb2a57efda5810d87d477a655c3 /src/plugins/projectexplorer/targetsetupwidget.cpp
parent990d26deba2889d70bed7287520e3cf006af45ae (diff)
TargetSetupPage: Try to prevent a crash
Try to prevent a crash that I can not reproduce: * Use a std::vector of TargetSetupWidgets instead of a map. * Double-check that no nullptr will end up in that vector. * Make sure widgets are removed from the vector before their kits become invalid. * Unify removal of widgets. Change-Id: Ie57c7689033914458ca4d4f3ae11998480008ff3 Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer/targetsetupwidget.cpp')
-rw-r--r--src/plugins/projectexplorer/targetsetupwidget.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/projectexplorer/targetsetupwidget.cpp b/src/plugins/projectexplorer/targetsetupwidget.cpp
index 959a167b49..258809f712 100644
--- a/src/plugins/projectexplorer/targetsetupwidget.cpp
+++ b/src/plugins/projectexplorer/targetsetupwidget.cpp
@@ -107,7 +107,7 @@ TargetSetupWidget::TargetSetupWidget(Kit *k, const QString &projectPath) :
connect(m_manageButton, &QAbstractButton::clicked, this, &TargetSetupWidget::manageKit);
}
-Kit *TargetSetupWidget::kit()
+Kit *TargetSetupWidget::kit() const
{
return m_kit;
}
@@ -119,7 +119,7 @@ void TargetSetupWidget::clearKit()
bool TargetSetupWidget::isKitSelected() const
{
- if (!m_detailsWidget->isChecked())
+ if (!m_kit || !m_detailsWidget->isChecked())
return false;
return !selectedBuildInfoList().isEmpty();