Use SynchronousProcess::runBlocking

Use SynchronousProcess::runBlocking in favor of SychronousProcess::run.
This avoid nested event loops which can produce really strange crashes
if not use carefully.

This patch only converts those processes that have a timeout of less
than 5 seconds or use the default timeout.

Change-Id: I9de8899dcc946af7049ea357a91972996c0256a1
Reviewed-by: Vikas Pachdha <vikas.pachdha@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
Tobias Hunger
2016-05-26 12:12:01 +02:00
parent 179153829a
commit 5d3823ac47
14 changed files with 23 additions and 22 deletions

View File

@@ -173,7 +173,7 @@ AndroidRunner::AndroidRunner(QObject *parent,
Utils::SynchronousProcess psProc;
psProc.setTimeoutS(5);
Utils::SynchronousProcessResponse response
= psProc.run(m_adb, selector() << _("shell") << _("readlink") << _("$(which ps)"));
= psProc.runBlocking(m_adb, selector() << _("shell") << _("readlink") << _("$(which ps)"));
const QString which = response.allOutput();
m_isBusyBox = which.startsWith("busybox");