diff --git a/src/connectionmanager.cpp b/src/connectionmanager.cpp index 266fa080..8a748ac0 100644 --- a/src/connectionmanager.cpp +++ b/src/connectionmanager.cpp @@ -1605,6 +1605,10 @@ ConnectionManager::Impl::retryOnError(const std::shared_ptr& deviceI return; if (auto i = deviceInfo->getConnectedInfo()) { auto ops = deviceInfo->requestPendingOps(); + std::unique_lock clk(i->mutex_); + for (const auto& [id, name]: ops) + i->pendingCbs_.emplace(id); + clk.unlock(); lk.unlock(); for (const auto& [id, name]: ops) sendChannelRequest(deviceInfo, i, i->socket_, name, id);