diff --git a/src/session/session_manager.cc b/src/session/session_manager.cc index 933ad5fa..d268dfc7 100644 --- a/src/session/session_manager.cc +++ b/src/session/session_manager.cc @@ -75,7 +75,6 @@ SessionManager::save_resume_download(core::Download* download) { { std::unique_lock lock(m_pending_builds_mutex); - // TODO: This is under the wrong lock. if (!m_active) throw torrent::internal_error("SessionManager::save_resume_download() called while not active."); diff --git a/src/session/session_manager.h b/src/session/session_manager.h index 5a135552..a3e1f9c1 100644 --- a/src/session/session_manager.h +++ b/src/session/session_manager.h @@ -1,6 +1,7 @@ #ifndef RTORRENT_SESSION_SESSION_MANAGER_H #define RTORRENT_SESSION_SESSION_MANAGER_H +#include #include #include #include @@ -101,7 +102,7 @@ private: align_cacheline std::mutex m_mutex; - bool m_active{}; + std::atomic m_active{}; std::deque m_save_requests; std::atomic m_save_request_counter{};