]> granicus.if.org Git - icinga2/commitdiff
Implicitly convert filter values to bool for object rules
authorGunnar Beutner <gunnar.beutner@netways.de>
Mon, 12 Jan 2015 07:38:14 +0000 (08:38 +0100)
committerGunnar Beutner <gunnar.beutner@netways.de>
Mon, 12 Jan 2015 07:38:14 +0000 (08:38 +0100)
fixes #8184

lib/icinga/hostgroup.cpp
lib/icinga/servicegroup.cpp
lib/icinga/usergroup.cpp

index 935be8bdc488ddcd9da8a5683e10fabecc6302d6..8c74e12cbf3aa94c67a64ef629e43e3552ac3e98 100644 (file)
@@ -49,7 +49,7 @@ bool HostGroup::EvaluateObjectRule(const Host::Ptr& host, const ConfigItem::Ptr&
                group->GetScope()->CopyTo(frame.Locals);
        frame.Locals->Set("host", host);
 
-       if (!group->GetFilter()->Evaluate(frame))
+       if (!group->GetFilter()->Evaluate(frame).ToBool())
                return false;
 
        Log(LogDebug, "HostGroup")
index e205c7dd5dd1e76e3c03b7a4e7272532a65875c3..8846b0b725f6a7ed192de74bae5e96bcd36b327a 100644 (file)
@@ -52,7 +52,7 @@ bool ServiceGroup::EvaluateObjectRule(const Service::Ptr& service, const ConfigI
        frame.Locals->Set("host", host);
        frame.Locals->Set("service", service);
 
-       if (!group->GetFilter()->Evaluate(frame))
+       if (!group->GetFilter()->Evaluate(frame).ToBool())
                return false;
 
        Log(LogDebug, "ServiceGroup")
index 29981f6dd54c9efa7ba4b12e0fe9d8e901361c29..9dc51b62f58b4f83b6dc646a731dceef85145331 100644 (file)
@@ -49,7 +49,7 @@ bool UserGroup::EvaluateObjectRule(const User::Ptr& user, const ConfigItem::Ptr&
                group->GetScope()->CopyTo(frame.Locals);
        frame.Locals->Set("user", user);
 
-       if (!group->GetFilter()->Evaluate(frame))
+       if (!group->GetFilter()->Evaluate(frame).ToBool())
                return false;
 
        Log(LogDebug, "UserGroup")