From 82898b31aecbd532cd6779ecf6ba206e6278d35f Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Mon, 21 Oct 2019 16:52:48 +0200 Subject: [PATCH] RedisWriter: fix missing m_Rcon!=null checks --- lib/redis/rediswriter-objects.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lib/redis/rediswriter-objects.cpp b/lib/redis/rediswriter-objects.cpp index 8e5117010..b0f47fc40 100644 --- a/lib/redis/rediswriter-objects.cpp +++ b/lib/redis/rediswriter-objects.cpp @@ -1224,6 +1224,9 @@ void RedisWriter::SendSentNotification( void RedisWriter::SendAddedDowntime(const Downtime::Ptr& downtime) { + if (!m_Rcon || !m_Rcon->IsConnected()) + return; + auto service (dynamic_pointer_cast(downtime->GetCheckable())); auto triggeredBy (Downtime::GetByName(downtime->GetTriggeredBy())); @@ -1269,6 +1272,9 @@ void RedisWriter::SendAddedDowntime(const Downtime::Ptr& downtime) void RedisWriter::SendStartedDowntime(const Downtime::Ptr& downtime) { + if (!m_Rcon || !m_Rcon->IsConnected()) + return; + auto service (dynamic_pointer_cast(downtime->GetCheckable())); auto triggeredBy (Downtime::GetByName(downtime->GetTriggeredBy())); @@ -1314,6 +1320,9 @@ void RedisWriter::SendStartedDowntime(const Downtime::Ptr& downtime) void RedisWriter::SendRemovedDowntime(const Downtime::Ptr& downtime) { + if (!m_Rcon || !m_Rcon->IsConnected()) + return; + auto service (dynamic_pointer_cast(downtime->GetCheckable())); auto triggeredBy (Downtime::GetByName(downtime->GetTriggeredBy())); @@ -1360,6 +1369,9 @@ void RedisWriter::SendRemovedDowntime(const Downtime::Ptr& downtime) void RedisWriter::SendAddedComment(const Comment::Ptr& comment) { + if (!m_Rcon || !m_Rcon->IsConnected()) + return; + auto service (dynamic_pointer_cast(comment->GetCheckable())); m_Rcon->FireAndForgetQuery({ @@ -1380,6 +1392,9 @@ void RedisWriter::SendAddedComment(const Comment::Ptr& comment) void RedisWriter::SendRemovedComment(const Comment::Ptr& comment) { + if (!m_Rcon || !m_Rcon->IsConnected()) + return; + auto service (dynamic_pointer_cast(comment->GetCheckable())); m_Rcon->FireAndForgetQuery({