Skip to content

Commit f74a2cb

Browse files
committed
Address comments from review
1 parent 1204d40 commit f74a2cb

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

lib/icinga/checkable-check.cpp

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -333,14 +333,21 @@ Checkable::ProcessingResult Checkable::ProcessCheckResult(const CheckResult::Ptr
333333

334334
cr->SetVarsAfter(vars_after);
335335

336-
bool problem_change = false;
337336
if (service) {
338337
SetLastCheckResult(cr);
339338
} else {
340339
bool wasProblem = GetProblem();
340+
341341
SetLastCheckResult(cr);
342-
problem_change = GetProblem() != wasProblem;
342+
343+
if (GetProblem() != wasProblem) {
344+
auto services = host->GetServices();
345+
for (auto& service : services) {
346+
Service::OnHostProblemChanged(service, cr, origin);
347+
}
348+
}
343349
}
350+
344351
bool was_flapping = IsFlapping();
345352

346353
UpdateFlappingStatus(cr->GetState());
@@ -490,13 +497,7 @@ Checkable::ProcessingResult Checkable::ProcessCheckResult(const CheckResult::Ptr
490497
if ((stateChange || hardChange) && !children.empty() && (affectsPreviousStateChildren || AffectsChildren()))
491498
OnReachabilityChanged(this, cr, children, origin);
492499

493-
olock->Unlock();
494-
if (!service && problem_change) {
495-
auto services = host->GetServices();
496-
for (auto& service : services) {
497-
Service::OnHostProblemChanged(service, cr, origin);
498-
}
499-
}
500+
olock.Unlock();
500501

501502
if (recovery) {
502503
for (auto& child : children) {

0 commit comments

Comments
 (0)