ExecuteFilter: Connect to done() signal instead of finished()

Change-Id: I36e8ed92fc57f67da51acc7712a939bf8d7a78c6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Jarek Kobus
2022-06-20 13:01:09 +02:00
parent 6fee34887b
commit a13a83b65d
2 changed files with 5 additions and 17 deletions

View File

@@ -132,16 +132,10 @@ void ExecuteFilter::accept(const LocatorFilterEntry &selection,
p->runHeadCommand(); p->runHeadCommand();
} }
void ExecuteFilter::finished() void ExecuteFilter::done()
{ {
QTC_ASSERT(m_process, return); QTC_ASSERT(m_process, return);
const QString commandName = headCommand(); MessageManager::writeFlashing(m_process->exitMessage());
QString message;
if (m_process->result() == ProcessResult::FinishedWithSuccess)
message = tr("Command \"%1\" finished.").arg(commandName);
else
message = tr("Command \"%1\" failed.").arg(commandName);
MessageManager::writeFlashing(message);
removeProcess(); removeProcess();
runHeadCommand(); runHeadCommand();
@@ -180,12 +174,6 @@ void ExecuteFilter::runHeadCommand()
m_process->setWorkingDirectory(d.workingDirectory); m_process->setWorkingDirectory(d.workingDirectory);
m_process->setCommand(d.command); m_process->setCommand(d.command);
m_process->start(); m_process->start();
if (!m_process->waitForStarted(1000)) {
MessageManager::writeFlashing(
tr("Could not start process: %1.").arg(m_process->errorString()));
removeProcess();
runHeadCommand();
}
} }
} }
@@ -196,7 +184,7 @@ void ExecuteFilter::createProcess()
m_process = new Utils::QtcProcess; m_process = new Utils::QtcProcess;
m_process->setEnvironment(Utils::Environment::systemEnvironment()); m_process->setEnvironment(Utils::Environment::systemEnvironment());
connect(m_process, &QtcProcess::finished, this, &ExecuteFilter::finished); connect(m_process, &QtcProcess::done, this, &ExecuteFilter::done);
connect(m_process, &QtcProcess::readyReadStandardOutput, this, &ExecuteFilter::readStandardOutput); connect(m_process, &QtcProcess::readyReadStandardOutput, this, &ExecuteFilter::readStandardOutput);
connect(m_process, &QtcProcess::readyReadStandardError, this, &ExecuteFilter::readStandardError); connect(m_process, &QtcProcess::readyReadStandardError, this, &ExecuteFilter::readStandardError);
} }
@@ -207,7 +195,7 @@ void ExecuteFilter::removeProcess()
return; return;
m_taskQueue.dequeue(); m_taskQueue.dequeue();
delete m_process; m_process->deleteLater();
m_process = nullptr; m_process = nullptr;
} }

View File

@@ -57,7 +57,7 @@ public:
QString *newText, int *selectionStart, int *selectionLength) const override; QString *newText, int *selectionStart, int *selectionLength) const override;
private: private:
void finished(); void done();
void readStandardOutput(); void readStandardOutput();
void readStandardError(); void readStandardError();
void runHeadCommand(); void runHeadCommand();