BuildManager: Move some repeating code into buildQueueAppend()

Make it clear that calling init() on newly added build steps
are always followed synchronously by starting a build queue.

Change-Id: I9918b2e595cdb1d0639490e3edf77e67fb8ae52e
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
Jarek Kobus
2023-07-15 19:30:46 +02:00
parent 32850e7fcc
commit 012f926f7c

View File

@@ -836,6 +836,7 @@ bool BuildManager::buildQueueAppend(const QList<BuildItem> &items, const QString
.arg(item.buildStep->displayName()), BuildStep::OutputFormat::Stderr);
for (BuildStep *buildStep : std::as_const(connectedSteps))
disconnectOutput(buildStep);
d->m_outputWindow->popup(IOutputPane::NoModeSwitch);
return false;
}
@@ -843,6 +844,9 @@ bool BuildManager::buildQueueAppend(const QList<BuildItem> &items, const QString
d->m_maxProgress += enabledCount;
for (const BuildItem &item : items)
incrementActiveBuildSteps(item.buildStep);
if (CompileOutputSettings::instance().popUp())
d->m_outputWindow->popup(IOutputPane::NoModeSwitch);
startBuildQueue();
return true;
}
@@ -862,27 +866,16 @@ bool BuildManager::buildLists(const QList<BuildStepList *> &bsls, const QStringL
d->m_isDeploying = d->m_isDeploying || list->id() == Constants::BUILDSTEPS_DEPLOY;
}
if (!buildQueueAppend(buildItems, preambleMessage)) {
d->m_outputWindow->popup(IOutputPane::NoModeSwitch);
if (buildQueueAppend(buildItems, preambleMessage))
return true;
d->m_isDeploying = false;
return false;
}
if (CompileOutputSettings::instance().popUp())
d->m_outputWindow->popup(IOutputPane::NoModeSwitch);
startBuildQueue();
return true;
}
void BuildManager::appendStep(BuildStep *step, const QString &name)
{
if (!buildQueueAppend({{step, step->enabled(), name}})) {
d->m_outputWindow->popup(IOutputPane::NoModeSwitch);
return;
}
if (CompileOutputSettings::instance().popUp())
d->m_outputWindow->popup(IOutputPane::NoModeSwitch);
startBuildQueue();
buildQueueAppend({{step, step->enabled(), name}});
}
template <class T>