diff options
author | Kai Koehne <kai.koehne@digia.com> | 2013-11-28 15:47:57 +0100 |
---|---|---|
committer | Kai Koehne <kai.koehne@digia.com> | 2013-11-28 17:02:10 +0100 |
commit | 6d32f7c336e065ac8e62c15bc987bccdc557ffc6 (patch) | |
tree | f58c1496e2f16cab93cf14f1152f91bdc6de10b3 | |
parent | 78e39070593557ad4ee1b836ab3cc2035486d272 (diff) |
Don't re-use QProcess in different tries
Don't assume you can recycle the QProcess object when trying again.
Instead create a new one every time ... This is also what
QtPatch::qmakeValues does, and prevents spurious
Warning: QProcess::start: Process is already running
errors.
Change-Id: Iae4904d24998c8ebeb460457b96d5adaaea99bf0
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
-rw-r--r-- | src/libs/installer/consumeoutputoperation.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/libs/installer/consumeoutputoperation.cpp b/src/libs/installer/consumeoutputoperation.cpp index 04d7c9a8c..9d7af57d7 100644 --- a/src/libs/installer/consumeoutputoperation.cpp +++ b/src/libs/installer/consumeoutputoperation.cpp @@ -104,14 +104,13 @@ bool ConsumeOutputOperation::performOperation() } QByteArray executableOutput; - QProcess process; 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) { - + QProcess process; process.start(executable.absoluteFilePath(), processArguments, QIODevice::ReadOnly); if (process.waitForFinished(2000)) { if (process.exitStatus() == QProcess::CrashExit) { |