summaryrefslogtreecommitdiff
path: root/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2010-09-09 09:58:17 +0200
committerFriedemann Kleint <Friedemann.Kleint@nokia.com>2010-09-09 09:58:17 +0200
commit97e7c12e3cf4584d00fe396960c70bdf5e8ef5d3 (patch)
treeb1089181e5865bf2e3f3a778e4c5a4cb688ab976 /src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp
parentf63b3167286d9ec4e006de2e9cb593b252b7b583 (diff)
downloadqt-creator-97e7c12e3cf4584d00fe396960c70bdf5e8ef5d3.tar.gz
Code polishing, continuing cb23999fbf16476d52678d23fc3cf888090560bf
Add more error messages to processes run for toolchain detection. Move Windows-specific code to dbgwinutils, remove inclusion of <windows.h>. Fix MinGW gcc 4.5 warnings.
Diffstat (limited to 'src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp')
-rw-r--r--src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp b/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp
index dd778dd286..e2ca351419 100644
--- a/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp
+++ b/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp
@@ -31,6 +31,7 @@
#include "rvctparser.h"
#include <utils/qtcassert.h>
+#include <utils/synchronousprocess.h>
#include <QtCore/QProcess>
#include <QtCore/QProcessEnvironment>
@@ -126,7 +127,15 @@ void RVCTToolChain::updateVersion()
return;
}
armcc.closeWriteChannel();
- armcc.waitForFinished();
+ if (!armcc.waitForFinished()) {
+ Utils::SynchronousProcess::stopProcess(armcc);
+ qWarning("Timeout running rvct binary '%s' trying to determine version.", qPrintable(binary));
+ return;
+ }
+ if (armcc.exitStatus() != QProcess::NormalExit) {
+ qWarning("A crash occurred when running rvct binary '%s' trying to determine version.", qPrintable(binary));
+ return;
+ }
QString versionLine = QString::fromLocal8Bit(armcc.readAllStandardOutput());
versionLine += QString::fromLocal8Bit(armcc.readAllStandardError());
const QRegExp versionRegExp(QLatin1String("RVCT(\\d*)\\.(\\d*).*\\[Build.(\\d*)\\]"),