From ce6087a59116d20e277833b711765f741981b789 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Sun, 21 Jan 2024 10:44:52 +0100 Subject: [PATCH] VcsCommand: Don't use Process::timeoutS() Use Job's timeoutS field instead. The Process::timeoutS() is going to be removed, soon. Change-Id: I2f2fc7ed99e51242d364a423234321e00ae52b75 Reviewed-by: Orgad Shaneh --- src/plugins/vcsbase/vcscommand.cpp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/plugins/vcsbase/vcscommand.cpp b/src/plugins/vcsbase/vcscommand.cpp index d560812017c..0ec059ea5d8 100644 --- a/src/plugins/vcsbase/vcscommand.cpp +++ b/src/plugins/vcsbase/vcscommand.cpp @@ -56,8 +56,7 @@ public: void setupProcess(Process *process, const Job &job); void installStdCallbacks(Process *process); EventLoopMode eventLoopMode() const; - ProcessResult handleDone(Process *process, - const ExitCodeInterpreter &exitCodeInterpreter = {}) const; + ProcessResult handleDone(Process *process, const Job &job) const; void startAll(); void startNextJob(); void processDone(); @@ -152,16 +151,15 @@ EventLoopMode VcsCommandPrivate::eventLoopMode() const return EventLoopMode::Off; } -ProcessResult VcsCommandPrivate::handleDone(Process *process, - const ExitCodeInterpreter &exitCodeInterpreter) const +ProcessResult VcsCommandPrivate::handleDone(Process *process, const Job &job) const { ProcessResult result; QString exitMessage; - if (exitCodeInterpreter && process->error() != QProcess::FailedToStart + if (job.exitCodeInterpreter && process->error() != QProcess::FailedToStart && process->exitStatus() == QProcess::NormalExit) { - result = exitCodeInterpreter(process->exitCode()); + result = job.exitCodeInterpreter(process->exitCode()); exitMessage = Process::exitMessage(process->commandLine(), m_result, - process->exitCode(), process->timeoutS()); + process->exitCode(), job.timeoutS); } else { result = process->result(); exitMessage = process->exitMessage(); @@ -202,7 +200,7 @@ void VcsCommandPrivate::startNextJob() void VcsCommandPrivate::processDone() { - m_result = handleDone(m_process.get(), m_jobs.at(m_currentJob).exitCodeInterpreter); + m_result = handleDone(m_process.get(), m_jobs.at(m_currentJob)); m_stdOut += m_process->cleanedStdOut(); m_stdErr += m_process->cleanedStdErr(); ++m_currentJob; @@ -305,13 +303,14 @@ CommandResult VcsCommand::runBlockingHelper(const CommandLine &command, int time if (command.executable().isEmpty()) return {}; - d->setupProcess(&process, {command, timeoutS, d->m_defaultWorkingDirectory, {}}); + const Internal::VcsCommandPrivate::Job job{command, timeoutS, d->m_defaultWorkingDirectory}; + d->setupProcess(&process, job); process.setTimeoutS(timeoutS); const EventLoopMode eventLoopMode = d->eventLoopMode(); process.setTimeOutMessageBoxEnabled(eventLoopMode == EventLoopMode::On); process.runBlocking(eventLoopMode); - d->handleDone(&process); + d->handleDone(&process, job); return CommandResult(process); }