FairMQ DDS plugin: fix incomplete shutdown when dds server is terminated

This commit is contained in:
Alexey Rybalchenko
2018-02-13 08:37:09 +01:00
committed by Mohammad Al-Turany
parent f8d4fe01d0
commit abcc5083f2
4 changed files with 38 additions and 33 deletions

View File

@@ -210,8 +210,11 @@ void FairMQStateMachine::SubscribeToStateChange(const std::string& key, std::fun
}
void FairMQStateMachine::UnsubscribeFromStateChange(const std::string& key)
{
fStateChangeSignalsMap.at(key).disconnect();
fStateChangeSignalsMap.erase(key);
if (fStateChangeSignalsMap.count(key))
{
fStateChangeSignalsMap.at(key).disconnect();
fStateChangeSignalsMap.erase(key);
}
}
int FairMQStateMachine::GetEventNumber(const std::string& event)