diff --git a/src/ExceptionHandlingDecorator.cc b/src/ExceptionHandlingDecorator.cc index c0c2a8b03d4e64c13be5f062d95a0b147afbae43..a5bab0887aef616475c7bd68f4c0dca9a7ca1bb2 100644 --- a/src/ExceptionHandlingDecorator.cc +++ b/src/ExceptionHandlingDecorator.cc @@ -52,12 +52,10 @@ namespace ChimeraTK { if(Application::getInstance().getLifeCycleState() != LifeCycleState::run) { // If the application has not yet fully started, we cannot wait for the device to open. Instead register // the variable in the DeviceMoule, so the transfer will be performed after the device is opened. - - // >>>>>>>>>>>>>> FIX ME <<<<<<<<<<<< - // >>>>>>>>>>>>>> FIX ME <<<<<<<<<<<< - // >>>>>>>>>>>>>> FIX ME <<<<<<<<<<<< - // need to make a copy of the target accessor!!! - deviceModule.writeAfterOpen.push_back(this->_target); + assert(_recoveryAccessor != nullptr); // should always be true for writeable registers with this decorator + // Note: it's ok to use the recoveryAccessor here as well, since device opening and recovery happens in the + // same thread in the DeviceModule. + deviceModule.writeAfterOpen.push_back(this->_recoveryAccessor); return false; } setOwnerValidityFunction(DataValidity::faulty);