summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@digia.com>2013-11-28 15:53:26 +0100
committerKai Koehne <kai.koehne@digia.com>2013-11-28 17:02:19 +0100
commit2224de8706929472f458fd9e94b8bffcc8887c99 (patch)
treec896b2b23936ac350d6c77f899e759a0e6f10f10 /src
parent6d32f7c336e065ac8e62c15bc987bccdc557ffc6 (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.cpp4
-rw-r--r--src/libs/installer/qtpatch.cpp4
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) {