diff --git a/nymea-app/applogcontroller.cpp b/nymea-app/applogcontroller.cpp index 0e20f323..9105a243 100644 --- a/nymea-app/applogcontroller.cpp +++ b/nymea-app/applogcontroller.cpp @@ -36,6 +36,7 @@ #include #include #include +#include QtMessageHandler AppLogController::s_oldLogMessageHandler = nullptr; @@ -161,6 +162,7 @@ void AppLogController::logMessageHandler(QtMsgType type, const QMessageLogContex void AppLogController::append(const QString &message, AppLogController::Type type) { + QMutexLocker locker(&m_mutex); QString finalMessage = message + "\n"; m_logFile.write(finalMessage.toUtf8()); m_logFile.flush(); diff --git a/nymea-app/applogcontroller.h b/nymea-app/applogcontroller.h index 3579aa44..971933d7 100644 --- a/nymea-app/applogcontroller.h +++ b/nymea-app/applogcontroller.h @@ -35,6 +35,7 @@ #include #include #include +#include class AppLogController : public QAbstractListModel { @@ -86,6 +87,7 @@ private: QFile m_logFile; QStringList m_buffer; QList m_types; + QMutex m_mutex; }; #endif // APPLOGCONTROLLER_H