diff --git a/libnymea-app/models/logsmodel.cpp b/libnymea-app/models/logsmodel.cpp index 2eb30c58..c9020549 100644 --- a/libnymea-app/models/logsmodel.cpp +++ b/libnymea-app/models/logsmodel.cpp @@ -51,8 +51,13 @@ Engine *LogsModel::engine() const void LogsModel::setEngine(Engine *engine) { if (m_engine != engine) { + if (m_engine) { + disconnect(m_engine->logManager(), &LogManager::logEntryReceived, this, &LogsModel::newLogEntryReceived); + } m_engine = engine; - connect(engine->logManager(), &LogManager::logEntryReceived, this, &LogsModel::newLogEntryReceived); + if (m_engine) { + connect(engine->logManager(), &LogManager::logEntryReceived, this, &LogsModel::newLogEntryReceived); + } emit engineChanged(); } }