From c84ca9bd027d526afe4cb51b3c3d772f912b6385 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Tue, 9 Jan 2018 15:53:17 +0100 Subject: [PATCH] QbsProjectManager: Fix missing reparse on session loading Task-number: QTCREATORBUG-19572 Change-Id: I71ccdf3abf370fb46dfbfd48a986674b50a04421 Reviewed-by: Nikolai Kosjar Reviewed-by: Joerg Bornemann --- src/plugins/qbsprojectmanager/qbsproject.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp index e87dda87cb7..ff7ba2822dd 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.cpp +++ b/src/plugins/qbsprojectmanager/qbsproject.cpp @@ -142,7 +142,7 @@ QbsProject::QbsProject(const FileName &fileName) : connect(this, &Project::removedTarget, this, [this](Target *t) {m_qbsProjects.remove(t); }); auto delayedParsing = [this]() { - if (static_cast(sender())->isActive()) + if (static_cast(sender())->isActive()) delayParsing(); }; subscribeSignal(&BuildConfiguration::environmentChanged, this, delayedParsing); @@ -541,8 +541,11 @@ void QbsProject::handleRuleExecutionDone() void QbsProject::changeActiveTarget(Target *t) { - if (t) + if (t) { m_qbsProject = m_qbsProjects.value(t); + if (t->isActive()) + delayParsing(); + } } void QbsProject::startParsing()