diff --git a/src/plugins/projectexplorer/buildstepspage.cpp b/src/plugins/projectexplorer/buildstepspage.cpp index cc82be902ff..4a74669f70c 100644 --- a/src/plugins/projectexplorer/buildstepspage.cpp +++ b/src/plugins/projectexplorer/buildstepspage.cpp @@ -266,12 +266,17 @@ void BuildStepsPage::stepMoveUp(int pos) void BuildStepsPage::updateBuildStepButtonsState() { int pos = m_ui->buildSettingsList->currentIndex().row(); - - const QList &steps = m_clean ? m_pro->cleanSteps() : m_pro->buildSteps(); - m_ui->buildStepRemoveToolButton->setEnabled(!steps.at(pos)->immutable()); - bool enableUp = pos>0 && !(steps.at(pos)->immutable() && steps.at(pos-1)->immutable()); - m_ui->buildStepUpToolButton->setEnabled(enableUp); - bool enableDown = pos < (m_ui->buildSettingsList->invisibleRootItem()->childCount() - 1) && - !(steps.at(pos)->immutable() && steps.at(pos+1)->immutable()); - m_ui->buildStepDownToolButton->setEnabled(enableDown); + if (pos == -1) { + m_ui->buildStepRemoveToolButton->setEnabled(false); + m_ui->buildStepUpToolButton->setEnabled(false); + m_ui->buildStepDownToolButton->setEnabled(false); + } else { + const QList &steps = m_clean ? m_pro->cleanSteps() : m_pro->buildSteps(); + m_ui->buildStepRemoveToolButton->setEnabled(!steps.at(pos)->immutable()); + bool enableUp = pos>0 && !(steps.at(pos)->immutable() && steps.at(pos-1)->immutable()); + m_ui->buildStepUpToolButton->setEnabled(enableUp); + bool enableDown = pos < (m_ui->buildSettingsList->invisibleRootItem()->childCount() - 1) && + !(steps.at(pos)->immutable() && steps.at(pos+1)->immutable()); + m_ui->buildStepDownToolButton->setEnabled(enableDown); + } }