diff --git a/lib/base/application.cpp b/lib/base/application.cpp index 106410642..712af5c22 100644 --- a/lib/base/application.cpp +++ b/lib/base/application.cpp @@ -324,6 +324,11 @@ mainloop: UninitializeBase(); } +bool Application::IsShuttingDown(void) +{ + return m_ShuttingDown; +} + void Application::OnShutdown(void) { /* Nothing to do here. */ diff --git a/lib/base/application.hpp b/lib/base/application.hpp index 9e5bb3d14..b732378ca 100644 --- a/lib/base/application.hpp +++ b/lib/base/application.hpp @@ -73,6 +73,8 @@ public: static void RequestRestart(void); static void RequestReopenLogs(void); + static bool IsShuttingDown(void); + static void SetDebuggingSeverity(LogSeverity severity); static LogSeverity GetDebuggingSeverity(void); diff --git a/lib/db_ido/dbconnection.cpp b/lib/db_ido/dbconnection.cpp index f07ba70c5..329c93bac 100644 --- a/lib/db_ido/dbconnection.cpp +++ b/lib/db_ido/dbconnection.cpp @@ -430,7 +430,7 @@ bool DbConnection::GetStatusUpdate(const DbObject::Ptr& dbobj) const void DbConnection::UpdateObject(const ConfigObject::Ptr& object) { - if (!GetConnected()) + if (!GetConnected() || Application::IsShuttingDown()) return; DbObject::Ptr dbobj = DbObject::GetOrCreateByObject(object);