From: Gunnar Beutner Date: Sun, 17 Jun 2012 23:58:13 +0000 (+0200) Subject: Bugfixes. X-Git-Tag: v0.0.1~405 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=30af9494d88ba8db94b2bcfc831a619c5e15d7ca;p=icinga2 Bugfixes. --- diff --git a/base/timer.cpp b/base/timer.cpp index d4382b9b8..58e9da42c 100644 --- a/base/timer.cpp +++ b/base/timer.cpp @@ -131,6 +131,8 @@ void Timer::Start(void) Stop(); Timers.push_back(GetSelf()); + + Reschedule(time(NULL) + m_Interval); } /** diff --git a/components/checker/checkercomponent.cpp b/components/checker/checkercomponent.cpp index e76989be2..e82792a6d 100644 --- a/components/checker/checkercomponent.cpp +++ b/components/checker/checkercomponent.cpp @@ -122,12 +122,7 @@ void CheckerComponent::AdjustCheckTimer(void) /* adjust next call time for the check timer */ Service service = m_Services.top(); - if (service.HasPendingCheck()) { - m_CheckTimer->Stop(); - } else { - m_CheckTimer->SetInterval(service.GetNextCheck() - time(NULL)); - m_CheckTimer->Start(); - } + m_CheckTimer->Reschedule(service.GetNextCheck()); } void CheckerComponent::AssignServiceRequestHandler(const Endpoint::Ptr& sender, const RequestMessage& request)