]> granicus.if.org Git - icinga2/commitdiff
Fix validator for dependencies
authorGunnar Beutner <gunnar@beutner.name>
Mon, 9 Mar 2015 07:04:18 +0000 (08:04 +0100)
committerGunnar Beutner <gunnar@beutner.name>
Mon, 9 Mar 2015 07:04:18 +0000 (08:04 +0100)
fixes #8596

lib/config/configitem.cpp
lib/icinga/dependency.cpp

index c1b02a5e74669bd7484187bcfa7448893293f7cc..2dc9ae0c6966d890d4c3d8f6eae1b5473e506e32 100644 (file)
@@ -360,6 +360,9 @@ bool ConfigItem::CommitNewItems(WorkQueue& upq)
                        }
 
                        upq.Join();
+
+                       if (upq.HasExceptions())
+                               return false;
                }
        } while (!items.empty());
 
index 59aa76d5b28a0f8b0ff8dab57a25efe09fb6588a..214b16dfbe627f98069ee2330453ae4cb3d3c670 100644 (file)
@@ -77,7 +77,7 @@ void Dependency::OnAllConfigLoaded(void)
        }
        
        if (!m_Child)
-               BOOST_THROW_EXCEPTION(ScriptError("Dependency '" << GetName() << "' references a child host/service which doesn't exist.", GetDebugInfo()));
+               BOOST_THROW_EXCEPTION(ScriptError("Dependency '" + GetName() + "' references a child host/service which doesn't exist.", GetDebugInfo()));
 
        m_Child->AddDependency(this);
 
@@ -96,7 +96,7 @@ void Dependency::OnAllConfigLoaded(void)
        }
        
        if (!m_Parent)
-               BOOST_THROW_EXCEPTION(ScriptError("Dependency '" << GetName() << "' references a parent host/service which doesn't exist.", GetDebugInfo()));
+               BOOST_THROW_EXCEPTION(ScriptError("Dependency '" + GetName() + "' references a parent host/service which doesn't exist.", GetDebugInfo()));
 
        m_Parent->AddReverseDependency(this);
 }