diff options
author | Daniel Teske <daniel.teske@nokia.com> | 2012-01-12 15:00:21 +0100 |
---|---|---|
committer | Daniel Teske <daniel.teske@nokia.com> | 2012-01-13 15:41:05 +0100 |
commit | bcbf17a3b0b2c99b80fb9cc6e442ac9f815a267f (patch) | |
tree | 53db00f03b8ff82eea752a71d1160eece3f46dba /src | |
parent | 6939ed0c7b94d472a6a66b6a38d57b689ac40459 (diff) | |
download | qt-creator-bcbf17a3b0b2c99b80fb9cc6e442ac9f815a267f.tar.gz |
Fix crash on adding MakeStep
This time for real.
Task-number: QTCREATORBUG-6688
Change-Id: I5256e8ca2b50830d8b8b2dd0202031c27bdc6923
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/qt4projectmanager/makestep.cpp | 17 | ||||
-rw-r--r-- | src/plugins/qt4projectmanager/makestep.h | 1 |
2 files changed, 15 insertions, 3 deletions
diff --git a/src/plugins/qt4projectmanager/makestep.cpp b/src/plugins/qt4projectmanager/makestep.cpp index 03bd454eab..b7021c58a4 100644 --- a/src/plugins/qt4projectmanager/makestep.cpp +++ b/src/plugins/qt4projectmanager/makestep.cpp @@ -238,12 +238,14 @@ bool MakeStep::init() setOutputParser(parser); + m_scriptTarget = (bc->qt4Target()->qt4Project()->rootQt4ProjectNode()->projectType() == ScriptTemplate); + return AbstractProcessStep::init(); } void MakeStep::run(QFutureInterface<bool> & fi) { - if (qt4BuildConfiguration()->qt4Target()->qt4Project()->rootQt4ProjectNode()->projectType() == ScriptTemplate) { + if (m_scriptTarget) { fi.reportResult(true); return; } @@ -351,13 +353,22 @@ void MakeStepConfigWidget::qtVersionChanged() void MakeStepConfigWidget::updateMakeOverrideLabel() { - Qt4BuildConfiguration *qt4bc = m_makeStep->qt4BuildConfiguration(); - m_ui->makeLabel->setText(tr("Override %1:").arg(qt4bc->makeCommand())); + Qt4BuildConfiguration *bc = m_makeStep->qt4BuildConfiguration(); + if (!bc) + bc = qobject_cast<Qt4BuildConfiguration *>(m_makeStep->target()->activeBuildConfiguration()); + if (bc) + m_ui->makeLabel->setText(tr("Override %1:").arg(bc->makeCommand())); + else + m_ui->makeLabel->setText(tr("Make:")); } void MakeStepConfigWidget::updateDetails() { Qt4BuildConfiguration *bc = m_makeStep->qt4BuildConfiguration(); + if (!bc) + bc = qobject_cast<Qt4BuildConfiguration *>(m_makeStep->target()->activeBuildConfiguration()); + if (!bc) + m_summaryText = tr("No qt4 buildconfiguration."); // Can't happen ProjectExplorer::ProcessParameters param; param.setMacroExpander(bc->macroExpander()); diff --git a/src/plugins/qt4projectmanager/makestep.h b/src/plugins/qt4projectmanager/makestep.h index 7cac6229c4..0507d24b6d 100644 --- a/src/plugins/qt4projectmanager/makestep.h +++ b/src/plugins/qt4projectmanager/makestep.h @@ -113,6 +113,7 @@ protected: private: void ctor(); bool m_clean; + bool m_scriptTarget; QString m_makeFileToCheck; QString m_userArgs; QString m_makeCmd; |