From: Michael Friedrich Date: Fri, 2 May 2014 17:43:49 +0000 (+0200) Subject: Fix exception for Notification objects without checkable object. X-Git-Tag: v0.0.11~97 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=dbe6a20fd243e42cbbef6fc7eac20a373e6dba4e;p=icinga2 Fix exception for Notification objects without checkable object. Fixes #6111 --- diff --git a/lib/icinga/notification.cpp b/lib/icinga/notification.cpp index 0fb525464..1e1cb78cf 100644 --- a/lib/icinga/notification.cpp +++ b/lib/icinga/notification.cpp @@ -81,21 +81,30 @@ void Notification::OnConfigLoaded(void) SetTypeFilter(FilterArrayToInt(GetTypes(), ~0)); SetStateFilter(FilterArrayToInt(GetStates(), ~0)); - GetCheckable()->AddNotification(GetSelf()); + Checkable::Ptr obj = GetCheckable(); + + if (obj) + obj->AddNotification(GetSelf()); } void Notification::Start(void) { DynamicObject::Start(); - GetCheckable()->AddNotification(GetSelf()); + Checkable::Ptr obj = GetCheckable(); + + if (obj) + obj->AddNotification(GetSelf()); } void Notification::Stop(void) { DynamicObject::Stop(); - GetCheckable()->RemoveNotification(GetSelf()); + Checkable::Ptr obj = GetCheckable(); + + if (obj) + obj->RemoveNotification(GetSelf()); } Checkable::Ptr Notification::GetCheckable(void) const