diff --git a/src/jamidht/connectionmanager.cpp b/src/jamidht/connectionmanager.cpp
index d895bb7ab455607fc4fa87c4e2933c1f33e2e0cb..db53faa50373e0480a5a1865441de77a45cad991 100644
--- a/src/jamidht/connectionmanager.cpp
+++ b/src/jamidht/connectionmanager.cpp
@@ -710,6 +710,7 @@ ConnectionManager::closeConnectionsWith(const std::string& deviceId)
         auto it = pimpl_->pendingCbs_.begin();
         while (it != pimpl_->pendingCbs_.end()) {
             if (it->first.first == deviceId) {
+                if (it->second) it->second(nullptr);
                 it = pimpl_->pendingCbs_.erase(it);
             } else {
                 ++it;