From ddb6740e7da2ec0cc6ad71ac7e40f8513a1103c2 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Mon, 21 Feb 2022 15:43:43 +0100 Subject: [PATCH] triggerInterrupt: Refactor to use break --- src/libutil/util.cc | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/src/libutil/util.cc b/src/libutil/util.cc index 03cbd7765..44463161f 100644 --- a/src/libutil/util.cc +++ b/src/libutil/util.cc @@ -1599,28 +1599,24 @@ void triggerInterrupt() { InterruptCallbacks::Token i = 0; - std::function callback; - do { + while (true) { + std::function callback; { auto interruptCallbacks(_interruptCallbacks.lock()); auto lb = interruptCallbacks->callbacks.lower_bound(i); - if (lb != interruptCallbacks->callbacks.end()) { - callback = lb->second; - i = lb->first + 1; - } else { - callback = nullptr; - } + if (lb == interruptCallbacks->callbacks.end()) + break; + + callback = lb->second; + i = lb->first + 1; } - if (callback) { - try { - callback(); - } catch (...) { - ignoreException(); - } + try { + callback(); + } catch (...) { + ignoreException(); } } - while (callback); } }