# HG changeset patch # User Sebastien Jodogne # Date 1526462768 -7200 # Node ID 441f23af9d898fb41d0ddc52e919124ef31dd546 # Parent 5e2730c8e23c0c76412c6bd2d8ee2df45dc35180 fix for older releases of boost::thread diff -r 5e2730c8e23c -r 441f23af9d89 Core/JobsEngine/JobsEngine.cpp --- a/Core/JobsEngine/JobsEngine.cpp Tue May 15 16:28:43 2018 +0200 +++ b/Core/JobsEngine/JobsEngine.cpp Wed May 16 11:26:08 2018 +0200 @@ -226,7 +226,8 @@ for (size_t i = 0; i < workers_.size(); i++) { - workers_[i] = boost::thread(Worker, this, i); + assert(workers_[i] == NULL); + workers_[i] = new boost::thread(Worker, this, i); } state_ = State_Running; @@ -257,10 +258,14 @@ for (size_t i = 0; i < workers_.size(); i++) { - if (workers_[i].joinable()) + assert(workers_[i] != NULL); + + if (workers_[i]->joinable()) { - workers_[i].join(); + workers_[i]->join(); } + + delete workers_[i]; } { diff -r 5e2730c8e23c -r 441f23af9d89 Core/JobsEngine/JobsEngine.h --- a/Core/JobsEngine/JobsEngine.h Tue May 15 16:28:43 2018 +0200 +++ b/Core/JobsEngine/JobsEngine.h Wed May 16 11:26:08 2018 +0200 @@ -50,11 +50,11 @@ State_Done }; - boost::mutex stateMutex_; - State state_; - JobsRegistry registry_; - boost::thread retryHandler_; - std::vector workers_; + boost::mutex stateMutex_; + State state_; + JobsRegistry registry_; + boost::thread retryHandler_; + std::vector workers_; bool IsRunning();