ConnectionManager: fail if max channel count is reached
Change-Id: I71d88e0efbf78009ba003b03d107c0f897dbc485
diff --git a/src/connectionmanager.cpp b/src/connectionmanager.cpp
index 2eb0a1c..f49834e 100644
--- a/src/connectionmanager.cpp
+++ b/src/connectionmanager.cpp
@@ -1041,6 +1041,13 @@
const dht::Value::Id& vid)
{
auto channelSock = sock->addChannel(name);
+ if (!channelSock) {
+ if (config_->logger)
+ config_->logger->error("sendChannelRequest failed - cannot create channel");
+ if (auto info = dinfo.lock())
+ info->executePendingOperations(vid, nullptr);
+ return;
+ }
channelSock->onShutdown([dinfo, name, vid] {
if (auto info = dinfo.lock())
info->executePendingOperations(vid, nullptr);