From: Michael Friedrich Date: Sun, 16 Mar 2014 21:26:17 +0000 (+0100) Subject: Fix RandomCheckTask result processing. X-Git-Tag: v0.0.9~90 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2d38f68bd6c0e946e28cfd66e69964f7d1ee3498;p=icinga2 Fix RandomCheckTask result processing. Fixes #5780 --- diff --git a/lib/methods/randomchecktask.cpp b/lib/methods/randomchecktask.cpp index 8aa90dee3..ebbd321d8 100644 --- a/lib/methods/randomchecktask.cpp +++ b/lib/methods/randomchecktask.cpp @@ -31,7 +31,7 @@ using namespace icinga; REGISTER_SCRIPTFUNCTION(RandomCheck, &RandomCheckTask::ScriptFunc); -CheckResult::Ptr RandomCheckTask::ScriptFunc(const Service::Ptr&) +void RandomCheckTask::ScriptFunc(const Service::Ptr& service, const CheckResult::Ptr& cr) { String output = "Hello from "; output += Utility::GetHostName(); @@ -39,12 +39,11 @@ CheckResult::Ptr RandomCheckTask::ScriptFunc(const Service::Ptr&) Dictionary::Ptr perfdata = make_shared(); perfdata->Set("time", Convert::ToDouble(Utility::GetTime())); - CheckResult::Ptr cr = make_shared(); cr->SetOutput(output); cr->SetPerformanceData(perfdata); cr->SetState(static_cast(Utility::Random() % 4)); cr->SetCheckSource(IcingaApplication::GetInstance()->GetNodeName()); - return cr; + service->ProcessCheckResult(cr); } diff --git a/lib/methods/randomchecktask.h b/lib/methods/randomchecktask.h index bf64676ff..dfea164c5 100644 --- a/lib/methods/randomchecktask.h +++ b/lib/methods/randomchecktask.h @@ -34,7 +34,7 @@ namespace icinga class RandomCheckTask { public: - static CheckResult::Ptr ScriptFunc(const Service::Ptr& service); + static void ScriptFunc(const Service::Ptr& service, const CheckResult::Ptr& cr); private: RandomCheckTask(void);