Skip to content

Commit 244395f

Browse files
author
NoahAndrews
committed
Extract internal cleanupHeartbeatsRunning() function
1 parent 0b08259 commit 244395f

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

src/canWrapper.cc

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -653,20 +653,22 @@ void writeDfuToBin(const Napi::CallbackInfo& info) {
653653
cb.Call(info.Env().Global(), {info.Env().Null(), Napi::Number::New(info.Env(), status)});
654654
}
655655

656+
void cleanupHeartbeatsRunning() {
657+
// Erase removed CAN buses from heartbeatsRunning
658+
std::scoped_lock lock{watchdogMtx, canDevicesMtx};
659+
for(int i = 0; i < heartbeatsRunning.size(); i++) {
660+
auto deviceIterator = canDeviceMap.find(heartbeatsRunning[i]);
661+
if (deviceIterator == canDeviceMap.end()) {
662+
heartbeatsRunning.erase(heartbeatsRunning.begin() + i);
663+
}
664+
}
665+
}
666+
656667
void heartbeatsWatchdog() {
657668
while (true) {
658669
std::this_thread::sleep_for (std::chrono::milliseconds(250));
659670

660-
{
661-
// Erase removed CAN buses from heartbeatsRunning
662-
std::scoped_lock lock{watchdogMtx, canDevicesMtx};
663-
for(int i = 0; i < heartbeatsRunning.size(); i++) {
664-
auto deviceIterator = canDeviceMap.find(heartbeatsRunning[i]);
665-
if (deviceIterator == canDeviceMap.end()) {
666-
heartbeatsRunning.erase(heartbeatsRunning.begin() + i);
667-
}
668-
}
669-
}
671+
cleanupHeartbeatsRunning();
670672

671673
std::scoped_lock lock{watchdogMtx};
672674

0 commit comments

Comments
 (0)