mirror of
https://github.com/Icinga/icinga2.git
synced 2025-04-08 17:05:25 +02:00
parent
ba49fd38e1
commit
b997462eef
@ -188,8 +188,12 @@ DynamicObject::Ptr ConfigItem::Commit(void)
|
||||
parent->RegisterChild(GetSelf());
|
||||
}
|
||||
|
||||
/* We need to make a copy of the child objects becauuse the
|
||||
* OnParentCommitted() handler is going to update the list. */
|
||||
set<ConfigItem::WeakPtr> children = m_ChildObjects;
|
||||
|
||||
/* notify our children of the update */
|
||||
BOOST_FOREACH(const ConfigItem::WeakPtr wchild, m_ChildObjects) {
|
||||
BOOST_FOREACH(const ConfigItem::WeakPtr wchild, children) {
|
||||
const ConfigItem::Ptr& child = wchild.lock();
|
||||
|
||||
if (!child)
|
||||
@ -240,7 +244,9 @@ void ConfigItem::UnregisterFromParents(void)
|
||||
{
|
||||
BOOST_FOREACH(const String& parentName, m_Parents) {
|
||||
ConfigItem::Ptr parent = GetObject(GetType(), parentName);
|
||||
parent->UnregisterChild(GetSelf());
|
||||
|
||||
if (parent)
|
||||
parent->UnregisterChild(GetSelf());
|
||||
}
|
||||
}
|
||||
|
||||
@ -302,4 +308,4 @@ void ConfigItem::Dump(ostream& fp) const
|
||||
fp << " {" << "\n";
|
||||
m_ExpressionList->Dump(fp, 1);
|
||||
fp << "}" << "\n";
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user