From 320a87d7b02efdaad0913d700de7ca1342e0691a Mon Sep 17 00:00:00 2001 From: Sebastian Hahta <joseha@utu.fi> Date: Mon, 27 Jul 2020 16:09:01 +0300 Subject: [PATCH] fix deadlock --- components/structures/src/new_frame.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/components/structures/src/new_frame.cpp b/components/structures/src/new_frame.cpp index 09b91e3af..2b45a62a3 100644 --- a/components/structures/src/new_frame.cpp +++ b/components/structures/src/new_frame.cpp @@ -281,16 +281,14 @@ void Frame::store() { //data_.erase(c.first); d.status = ChannelStatus::INVALID; } - - uint64_t sig = (uint64_t(id()) << 32) + static_cast<unsigned int>(c.first); - const auto &i = parent_->change_channel_.find(sig); - - if (i != parent_->change_channel_.end()) i->second.trigger(*this, c.first); } } for (auto c : changed_) { parent_->change_.trigger(*this, c.first); + uint64_t sig = (uint64_t(id()) << 32) + static_cast<unsigned int>(c.first); + const auto &i = parent_->change_channel_.find(sig); + if (i != parent_->change_channel_.end()) i->second.trigger(*this, c.first); } } -- GitLab