From eb06d1f1cc3aac2bd9afd819e50e84a9dfd3b66f Mon Sep 17 00:00:00 2001 From: hjk Date: Wed, 31 Jul 2019 14:30:11 +0200 Subject: [PATCH] ProjectExplorer: Fix crash when triggering Kit name changes Amends 7d3091a7b9e42efc3. Change-Id: Ibb18ffef49f8b9739121dcbfa29639d5e3f6a71b Reviewed-by: Christian Kandeler --- .../miniprojecttargetselector.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/plugins/projectexplorer/miniprojecttargetselector.cpp b/src/plugins/projectexplorer/miniprojecttargetselector.cpp index ee87499d92c..c609dc8e625 100644 --- a/src/plugins/projectexplorer/miniprojecttargetselector.cpp +++ b/src/plugins/projectexplorer/miniprojecttargetselector.cpp @@ -548,23 +548,25 @@ void GenericListWidget::displayNameChanged() if (currentItem()) activeObject = currentItem()->data(Qt::UserRole).value(); - auto *pc = qobject_cast(sender()); + QObject *obj = sender(); int index = -1; int i = 0; for (; i < count(); ++i) { QListWidgetItem *lwi = item(i); - if (lwi->data(Qt::UserRole).value() == pc) { + if (lwi->data(Qt::UserRole).value() == obj) { index = i; break; } } if (index == -1) return; + + const QString displayName = displayNameFor(obj); QListWidgetItem *lwi = takeItem(i); - lwi->setText(pc->displayName()); + lwi->setText(displayName); int pos = count(); for (int i = 0; i < count(); ++i) { - if (caseFriendlyCompare(displayNameFor(pc), displayNameFor(objectAt(i))) < 0) { + if (caseFriendlyCompare(displayName, displayNameFor(objectAt(i))) < 0) { pos = i; break; } @@ -585,10 +587,11 @@ void GenericListWidget::displayNameChanged() void GenericListWidget::toolTipChanged() { - auto *pc = qobject_cast(sender()); - if (QListWidgetItem *lwi = itemForProjectConfiguration(pc)) { - lwi->setData(Qt::ToolTipRole, pc->toolTip()); - lwi->setData(Qt::UserRole + 1, pc->toolTip()); + QObject *obj = sender(); + if (QListWidgetItem *lwi = itemForProjectConfiguration(obj)) { + const QString toolTip = toolTipFor(obj); + lwi->setData(Qt::ToolTipRole, toolTip); + lwi->setData(Qt::UserRole + 1, toolTip); } }