diff options
author | Kai Koehne <kai.koehne@digia.com> | 2013-11-28 15:53:26 +0100 |
---|---|---|
committer | Kai Koehne <kai.koehne@digia.com> | 2013-11-28 17:02:19 +0100 |
commit | 2224de8706929472f458fd9e94b8bffcc8887c99 (patch) | |
tree | c896b2b23936ac350d6c77f899e759a0e6f10f10 /src | |
parent | 6d32f7c336e065ac8e62c15bc987bccdc557ffc6 (diff) |
Wait longer for commands to return, but don't try excessively
So far we forcefully killed the executable if it wasn't done after
3 seconds, but re-tried 60 times. It's saner to let the app run
for 10 seconds maximum, and only re-try 3 times.
Change-Id: I41ccf2fdb464f58834c333ab69c4f2738e8365fc
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/libs/installer/consumeoutputoperation.cpp | 4 | ||||
-rw-r--r-- | src/libs/installer/qtpatch.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/libs/installer/consumeoutputoperation.cpp b/src/libs/installer/consumeoutputoperation.cpp index 9d7af57d7..9f747b890 100644 --- a/src/libs/installer/consumeoutputoperation.cpp +++ b/src/libs/installer/consumeoutputoperation.cpp @@ -109,10 +109,10 @@ bool ConsumeOutputOperation::performOperation() const QStringList processArguments = arguments().mid(2); // in some cases it is not runable, because another process is blocking it(filewatcher ...) int waitCount = 0; - while (executableOutput.isEmpty() && waitCount < 60) { + while (executableOutput.isEmpty() && waitCount < 3) { QProcess process; process.start(executable.absoluteFilePath(), processArguments, QIODevice::ReadOnly); - if (process.waitForFinished(2000)) { + if (process.waitForFinished(10000)) { if (process.exitStatus() == QProcess::CrashExit) { setError(UserDefinedError); setErrorString(tr("Running '%1' resulted in a crash.").arg( diff --git a/src/libs/installer/qtpatch.cpp b/src/libs/installer/qtpatch.cpp index b333a0af6..0494269c7 100644 --- a/src/libs/installer/qtpatch.cpp +++ b/src/libs/installer/qtpatch.cpp @@ -75,7 +75,7 @@ QHash<QString, QByteArray> QtPatch::qmakeValues(const QString &qmakePath, QByteA // in some cases qmake is not runable, because another process is blocking it(filewatcher ...) int waitCount = 0; - while (qmakeValueHash.isEmpty() && waitCount < 60) { + while (qmakeValueHash.isEmpty() && waitCount < 3) { QFileInfo qmake(qmakePath); if (!qmake.exists()) { @@ -92,7 +92,7 @@ QHash<QString, QByteArray> QtPatch::qmakeValues(const QString &qmakePath, QByteA QProcess process; process.start(qmake.absoluteFilePath(), args, QIODevice::ReadOnly); - if (process.waitForFinished(2000)) { + if (process.waitForFinished(10000)) { QByteArray output = process.readAllStandardOutput(); qmakeOutput->append(output); if (process.exitStatus() == QProcess::CrashExit) { |