From 1b7fc163fe442d850779c082fd77aa5b1a948d14 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Thu, 7 Apr 2011 12:46:10 +0200 Subject: [PATCH] QMakeStep: Show error output if qmlsdebuggerlib build fails Reviewed-by: dt --- src/plugins/qt4projectmanager/qmakestep.cpp | 28 ++++++++++++++++----- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/src/plugins/qt4projectmanager/qmakestep.cpp b/src/plugins/qt4projectmanager/qmakestep.cpp index 520213d4ad9..e9c5c3d1328 100644 --- a/src/plugins/qt4projectmanager/qmakestep.cpp +++ b/src/plugins/qt4projectmanager/qmakestep.cpp @@ -42,6 +42,7 @@ #include "qt4target.h" #include "qtversionmanager.h" #include "debugginghelperbuildtask.h" +#include "ui_showbuildlog.h" #include #include @@ -556,12 +557,27 @@ void QMakeStepConfigWidget::buildQmlDebuggingHelper() void QMakeStepConfigWidget::debuggingHelperBuildFinished(int qtVersionId, const QString &output) { - m_step->qt4BuildConfiguration()->qtVersion()->invalidateCache(); - m_ui.qmlDebuggingLibraryCheckBox->setChecked(m_step->linkQmlDebuggingLibrary()); - m_ui.qmlDebuggingLibraryCheckBox->setEnabled(m_step->isQmlDebuggingLibrarySupported()); - updateSummaryLabel(); - updateEffectiveQMakeCall(); - updateQmlDebuggingWarningsLabel(); + QtVersion *version = QtVersionManager::instance()->version(qtVersionId); + if (!version) // qt version got deleted in between + return; + version->invalidateCache(); + + if (version == m_step->qt4BuildConfiguration()->qtVersion()) { + m_ui.qmlDebuggingLibraryCheckBox->setChecked(m_step->linkQmlDebuggingLibrary()); + m_ui.qmlDebuggingLibraryCheckBox->setEnabled(m_step->isQmlDebuggingLibrarySupported()); + updateSummaryLabel(); + updateEffectiveQMakeCall(); + updateQmlDebuggingWarningsLabel(); + } + + if (!version->hasQmlDebuggingLibrary()) { + Ui::ShowBuildLog ui; + QDialog dialog; + ui.setupUi(&dialog); + + ui.log->setPlainText(output); + dialog.exec(); + } } void QMakeStepConfigWidget::updateSummaryLabel()