ProcessLauncher: Pass start packet into the launcher socket

Instead of holding the start packet on caller side when
launcher socket isn't ready yet, pass it into the launcher
socket and buffer it there until the socket becomes ready.
This simplifies starting the process considerably.

Get rid of CallerHandle::canWaitFor(), as this is already
checked by QtcProcess itself.

Get rid of LauncherHandle::m_waitingFor field and
LauncherInterface::isReady() method, as both are not used anymore.

Change-Id: Ida6f0629170647249e562028c3ea5db1830b8a0d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
Jarek Kobus
2022-04-20 19:30:59 +02:00
parent f630f49924
commit 6599a67737
4 changed files with 43 additions and 127 deletions

View File

@@ -227,12 +227,6 @@ bool LauncherInterface::isStarted()
return s_started;
}
bool LauncherInterface::isReady()
{
QMutexLocker locker(&s_instanceMutex);
return instance()->m_private->socket()->isReady();
}
void LauncherInterface::sendData(const QByteArray &data)
{
QMutexLocker locker(&s_instanceMutex);