diff --git a/src/plugins/projectexplorer/buildsteplist.cpp b/src/plugins/projectexplorer/buildsteplist.cpp index a2e415fa9ab93b7079913c4a6e9a6b4ebf4ae249..4c82937aba8e0c780c4cb803473c3d317baf7344 100644 --- a/src/plugins/projectexplorer/buildsteplist.cpp +++ b/src/plugins/projectexplorer/buildsteplist.cpp @@ -144,6 +144,10 @@ void BuildStepList::cloneSteps(BuildStepList *source) bool BuildStepList::fromMap(const QVariantMap &map) { + // We need the ID set before trying to restore the steps! + if (!ProjectConfiguration::fromMap(map)) + return false; + int maxSteps = map.value(QString::fromLatin1(STEPS_COUNT_KEY), 0).toInt(); for (int i = 0; i < maxSteps; ++i) { QVariantMap bsData(map.value(QString::fromLatin1(STEPS_PREFIX) + QString::number(i)).toMap()); @@ -163,7 +167,7 @@ bool BuildStepList::fromMap(const QVariantMap &map) } insertStep(m_steps.count(), bs); } - return ProjectConfiguration::fromMap(map); + return true; } QList<BuildStep *> BuildStepList::steps() const