diff options
author | Joerg Bornemann <joerg.bornemann@digia.com> | 2013-08-30 17:17:54 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@digia.com> | 2013-09-04 15:00:26 +0200 |
commit | aadebfaa7d8a9006c17e3ce76208b35f0b2369e3 (patch) | |
tree | 391cfcdea3a09523b8345a120338601287fab95d /src/app/qbs | |
parent | 8269d5d54566685081b5e1b2cf2075460b8ff112 (diff) |
check for existence before execution of a tool
This is a work-around for QTBUG-5990.
Change-Id: I58f6f40cec7d9f5ac4bb90c1c2178b0e367fb1f6
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Diffstat (limited to 'src/app/qbs')
-rw-r--r-- | src/app/qbs/qbstool.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/app/qbs/qbstool.cpp b/src/app/qbs/qbstool.cpp index ff30b3372..e9f0140be 100644 --- a/src/app/qbs/qbstool.cpp +++ b/src/app/qbs/qbstool.cpp @@ -32,6 +32,7 @@ #include <QCoreApplication> #include <QDir> +#include <QFileInfo> #include <QProcess> #include <iostream> @@ -49,8 +50,14 @@ void QbsTool::runTool(const QString &toolName, const QStringList &arguments) { m_failedToStart = false; m_exitCode = -1; + const QString filePath = qbsToolFilePath(toolName); + const QFileInfo fi(filePath); + if (!fi.exists() || !fi.isFile() || !fi.isExecutable()) { + m_failedToStart = true; + return; + } QProcess toolProc; - toolProc.start(qbsToolFilePath(toolName), arguments); + toolProc.start(filePath, arguments); if (!toolProc.waitForStarted()) m_failedToStart = true; toolProc.waitForFinished(-1); |