Base QtcProcess on ProcessInterface

Change-Id: I51bc6b7aea8e2d3aa0ef9fbba3b5fc796058c8cb
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2022-02-18 01:53:33 +01:00
parent 537100f803
commit 357c39f2d7
2 changed files with 108 additions and 115 deletions

View File

@@ -447,9 +447,10 @@ public:
OtherFailure
};
explicit QtcProcessPrivate(QtcProcess *parent)
explicit QtcProcessPrivate(QtcProcess *parent, ProcessSetupData &setup)
: QObject(parent)
, q(parent)
, m_setup(setup)
{}
ProcessInterface *createProcessInterface()
@@ -525,7 +526,7 @@ public:
QtcProcess *q;
std::unique_ptr<ProcessInterface> m_process;
ProcessSetupData m_setup;
ProcessSetupData &m_setup;
void slotTimeout();
void slotFinished();
@@ -670,8 +671,8 @@ bool ProcessInterface::ensureProgramExists(const QString &program)
*/
QtcProcess::QtcProcess(QObject *parent)
: QObject(parent),
d(new QtcProcessPrivate(this))
: ProcessInterface(parent),
d(new QtcProcessPrivate(this, m_setup))
{
static int qProcessExitStatusMeta = qRegisterMetaType<QProcess::ExitStatus>();
static int qProcessProcessErrorMeta = qRegisterMetaType<QProcess::ProcessError>();