QbsProjectManager: Do not execute rules on initial project loading

The "rule execution only" type of build can lead to nasty bugs due to
scanners getting called for files that don't exist yet.
This effectively reverts a57e75884e.

Task-number: QBS-1021
Change-Id: I85e7559060112428f8cd5872b95619ac26979743
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
This commit is contained in:
Christian Kandeler
2016-09-28 12:09:35 +02:00
parent 54a04e68b9
commit 9e6d470c3a

View File

@@ -483,22 +483,6 @@ void QbsProject::handleQbsParsingDone(bool success)
m_qbsUpdateFutureInterface->reportCanceled();
}
bool hasTargetArtifacts = false;
if (dataChanged) {
qCDebug(qbsPmLog) << "Project data changed.";
foreach (const qbs::ProductData &product, m_projectData.allProducts()) {
if (!product.targetArtifacts().isEmpty()) {
hasTargetArtifacts = true;
break;
}
}
if (!hasTargetArtifacts) {
qCDebug(qbsPmLog) << "No target artifacts present, executing rules";
m_qbsProjectParser->startRuleExecution();
return;
}
}
m_qbsProjectParser->deleteLater();
m_qbsProjectParser = 0;
m_qbsUpdateFutureInterface->reportFinished();