diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp index 03c15752262..f1b43da8ac7 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.cpp +++ b/src/plugins/qbsprojectmanager/qbsproject.cpp @@ -45,6 +45,7 @@ #include #include #include +#include #include #include #include @@ -382,6 +383,12 @@ void QbsProject::parseCurrentBuildConfiguration(bool force) if (!m_forceParsing) m_forceParsing = force; + // Qbs does update the build graph during the build. So we cannot + // start to parse while a build is running or we will lose information. + // Just return since the qbsbuildstep will trigger a reparse after the build. + if (ProjectExplorer::BuildManager::isBuilding(this)) + return; + if (!activeTarget()) return; QbsBuildConfiguration *bc = qobject_cast(activeTarget()->activeBuildConfiguration());