diff --git a/src/server/Dispatcher.cpp b/src/server/Dispatcher.cpp index 4fe83d2..b4427d4 100644 --- a/src/server/Dispatcher.cpp +++ b/src/server/Dispatcher.cpp @@ -14,6 +14,7 @@ DProcess::DProcess(QObject *parent) : QProcess(parent){ //Setup the process this->setProcessEnvironment(QProcessEnvironment::systemEnvironment()); this->setProcessChannelMode(QProcess::MergedChannels); + connect(this, SIGNAL(readyRead()), this, SLOT(updateLog()) ); } DProcess::~DProcess(){ @@ -87,6 +88,9 @@ void DProcess::cmdFinished(int ret, QProcess::ExitStatus status){ } } +void DProcess::updateLog(){ + emit ProcessOutput(getProcLog()); +} // ================================ // Dispatcher Class // ================================ diff --git a/src/server/Dispatcher.h b/src/server/Dispatcher.h index e20a7d1..3b067ad 100644 --- a/src/server/Dispatcher.h +++ b/src/server/Dispatcher.h @@ -39,9 +39,13 @@ private: private slots: void cmdError(QProcess::ProcessError); void cmdFinished(int, QProcess::ExitStatus); + void updateLog(); //readyRead() signal + signals: void ProcFinished(QString); //ID + //Generic signals for subsystem usage (no direct proc access later) + void ProcessOutput(QString); void Finished(QString, int, QString); //ID, retcode, log };