diff --git a/CHANGELOG.md b/CHANGELOG.md index 756b0709..2731eb8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,13 @@ will consitute of a breaking change warranting a new major release: # [unreleased] +# [v2.0.4] 2023-04-19 + +## Fixed + +- The dual lane assembly device handlers did not properly set their datasets + to invalid on off transitions + # [v2.0.3] 2023-04-17 - eive-tmtc: v3.1.1 diff --git a/CMakeLists.txt b/CMakeLists.txt index 8f632d2d..358dd8ab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,7 +11,7 @@ cmake_minimum_required(VERSION 3.13) set(OBSW_VERSION_MAJOR 2) set(OBSW_VERSION_MINOR 0) -set(OBSW_VERSION_REVISION 3) +set(OBSW_VERSION_REVISION 4) # set(CMAKE_VERBOSE TRUE) diff --git a/mission/acs/GyrAdis1650XHandler.cpp b/mission/acs/GyrAdis1650XHandler.cpp index b9e0b049..c61187ce 100644 --- a/mission/acs/GyrAdis1650XHandler.cpp +++ b/mission/acs/GyrAdis1650XHandler.cpp @@ -37,6 +37,7 @@ void GyrAdis1650XHandler::doStartUp() { void GyrAdis1650XHandler::doShutDown() { if (internalState != InternalState::SHUTDOWN) { commandExecuted = false; + PoolReadGuard pg(&primaryDataset); primaryDataset.setValidity(false, true); internalState = InternalState::SHUTDOWN; } diff --git a/mission/acs/GyrL3gCustomHandler.cpp b/mission/acs/GyrL3gCustomHandler.cpp index 934fba99..ebc6ba42 100644 --- a/mission/acs/GyrL3gCustomHandler.cpp +++ b/mission/acs/GyrL3gCustomHandler.cpp @@ -33,6 +33,7 @@ void GyrL3gCustomHandler::doStartUp() { void GyrL3gCustomHandler::doShutDown() { if (internalState != InternalState::SHUTDOWN) { internalState = InternalState::SHUTDOWN; + PoolReadGuard pg(&dataset); dataset.setValidity(false, true); commandExecuted = false; } diff --git a/mission/acs/MgmLis3CustomHandler.cpp b/mission/acs/MgmLis3CustomHandler.cpp index d1dd5eff..4b2e992d 100644 --- a/mission/acs/MgmLis3CustomHandler.cpp +++ b/mission/acs/MgmLis3CustomHandler.cpp @@ -29,6 +29,7 @@ void MgmLis3CustomHandler::doStartUp() { void MgmLis3CustomHandler::doShutDown() { if (internalState != InternalState::SHUTDOWN) { + PoolReadGuard pg(&dataset); dataset.setValidity(false, true); internalState = InternalState::SHUTDOWN; commandExecuted = false; diff --git a/mission/acs/MgmRm3100CustomHandler.cpp b/mission/acs/MgmRm3100CustomHandler.cpp index e57effda..24c94938 100644 --- a/mission/acs/MgmRm3100CustomHandler.cpp +++ b/mission/acs/MgmRm3100CustomHandler.cpp @@ -33,6 +33,7 @@ void MgmRm3100CustomHandler::doStartUp() { void MgmRm3100CustomHandler::doShutDown() { if (internalState != InternalState::SHUTDOWN) { commandExecuted = false; + PoolReadGuard pg(&primaryDataset); primaryDataset.setValidity(false, true); internalState = InternalState::SHUTDOWN; } diff --git a/mission/acs/SusHandler.cpp b/mission/acs/SusHandler.cpp index 0032a11d..c347020f 100644 --- a/mission/acs/SusHandler.cpp +++ b/mission/acs/SusHandler.cpp @@ -29,6 +29,7 @@ void SusHandler::doStartUp() { void SusHandler::doShutDown() { if (internalState != InternalState::SHUTDOWN) { + PoolReadGuard pg(&dataset); dataset.setValidity(false, true); internalState = InternalState::SHUTDOWN; commandExecuted = false;