AbstractProcessStep: Do not run a qprocess in a thread

This avoids sending signals for new tasks and process output
via the gui thread's event loop. When finding lots of issues in
the output we generate so many events that any attempt to
compress events takes a long time (max. events waiting to be
processed were > 1200000 when doing a clang -Weverything build!),
and thus the UI freezes.

Change-Id: I9668d2537b1a268e788cd0ea5c756ebaab4462a9
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
This commit is contained in:
Tobias Hunger
2013-02-12 12:56:02 +01:00
parent 6a7cefbd97
commit 962ba86d0f
10 changed files with 42 additions and 23 deletions

View File

@@ -219,6 +219,7 @@ void MakeStep::run(QFutureInterface<bool> &fi)
if (!canContinue) {
emit addOutput(tr("Configuration is faulty. Check the Issues view for details."), BuildStep::MessageOutput);
fi.reportResult(false);
emit finished();
return;
}