From 3533870cf22addab0a5fb4d032cc438093d281b3 Mon Sep 17 00:00:00 2001 From: "Hornburg Bjoern (ETAS-ECM XPC-Hi)" Date: Fri, 17 Apr 2026 16:53:34 +0200 Subject: [PATCH] Fix potential race condition in class JobRunner --- .../code/application/job_runner/job_runner.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/score/TimeDaemon/code/application/job_runner/job_runner.cpp b/score/TimeDaemon/code/application/job_runner/job_runner.cpp index 7af5645..1b2f05b 100644 --- a/score/TimeDaemon/code/application/job_runner/job_runner.cpp +++ b/score/TimeDaemon/code/application/job_runner/job_runner.cpp @@ -27,15 +27,15 @@ JobRunner::JobRunner(std::vector jobs, const std::string name) void JobRunner::Start(const score::cpp::stop_token& token) { - if (status_ != Result::kIdle) { - return; // Already running - } + std::lock_guard lock(status_mutex_); + if (status_ != Result::kIdle) + { + return; // Already running + } - { // Set before score::cpp::jthread as if we will set it after, worker_thread_ // it could be already done. - std::lock_guard lock(status_mutex_); status_ = Result::kInProgress; }