From bdf3c3e49218acef7f837b17d198e4564f3f5122 Mon Sep 17 00:00:00 2001
From: p-yukusai <85849071+p-yukusai@users.noreply.github.com>
Date: Sat, 20 Jan 2024 14:46:30 -0300
Subject: [PATCH] - Append initializer strings to logs if empty to avoid a
 crash

---
 src/ctrl/ExportParams.h | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/ctrl/ExportParams.h b/src/ctrl/ExportParams.h
index ef90252..99ee7dc 100644
--- a/src/ctrl/ExportParams.h
+++ b/src/ctrl/ExportParams.h
@@ -1326,8 +1326,11 @@ class Exporter {
 
         mProcess->connect(process, &QProcess::readyRead, [=] {
             if (this->mProcess) {
+                if(export_obj.log.isEmpty()) { export_obj.log.append("-Ready read-"); }
+                if(export_obj.errorLog.isEmpty()) { export_obj.errorLog.append("-Ready read-"); }
+                if(export_obj.writeLog.isEmpty()) { export_obj.writeLog.append("-Ready read-"); }
                 export_obj.log.push_back(QString(this->mProcess->readAll().data()));
-                QString logs = export_obj.log.last();
+                QStringList logs = {export_obj.log.last(), export_obj.writeLog.last(), export_obj.errorLog.last()};
                 bool containsErrors = (logs.contains("error", Qt::CaseInsensitive)
                 || logs.contains("conversion failed", Qt::CaseInsensitive)
                 || logs.contains("invalid", Qt::CaseInsensitive)
@@ -1364,9 +1367,11 @@ class Exporter {
                         export_obj.procWaitTick = 0;
                     }
                 }
+                if(export_obj.log.isEmpty()) { export_obj.log.append("-Ready Write-"); }
+                if(export_obj.writeLog.isEmpty()) { export_obj.writeLog.append("-Ready Write-"); }
                 export_obj.writeLog.push_back(QString(this->mProcess->readAll().data()));
                 QString lastLog = export_obj.log.last();
-                QString lastWriteLog = export_obj.log.last();
+                QString lastWriteLog = export_obj.writeLog.last();
                 if(lastLog == export_obj.latestLog && lastWriteLog == export_obj.latestWriteLog) {
                     export_obj.procWaitTick += 1;
                 }