PipSupport: Connect to watcher before setting a future

In order to avoid runtime warning:
"QFutureWatcher::connect: connecting after calling
setFuture() is likely to produce race".

Change-Id: I921396628e5615e7c2d87045d2e787388dbddcc6
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Jarek Kobus
2022-07-05 13:07:37 +02:00
parent c7aa3a9605
commit 96c5a8a789

View File

@@ -50,13 +50,12 @@ static constexpr char pipInstallTaskId[] = "Python::pipInstallTask";
PipInstallTask::PipInstallTask(const FilePath &python)
: m_python(python)
{
m_watcher.setFuture(m_future.future());
connect(&m_process, &QtcProcess::done, this, &PipInstallTask::handleDone);
connect(&m_process, &QtcProcess::readyReadStandardError, this, &PipInstallTask::handleError);
connect(&m_process, &QtcProcess::readyReadStandardOutput, this, &PipInstallTask::handleOutput);
connect(&m_killTimer, &QTimer::timeout, this, &PipInstallTask::cancel);
connect(&m_watcher, &QFutureWatcher<void>::canceled, this, &PipInstallTask::cancel);
m_watcher.setFuture(m_future.future());
}
void PipInstallTask::setPackage(const PipPackage &package)