diff --git a/src/ringdht/ringaccount.cpp b/src/ringdht/ringaccount.cpp
index d0c338c1194994303905643251909fcc470b187d..34a8cd6a9c8f8840b4e3645c53c0c65f0fa3f6a3 100644
--- a/src/ringdht/ringaccount.cpp
+++ b/src/ringdht/ringaccount.cpp
@@ -596,7 +596,7 @@ RingAccount::handlePendingCallList()
         if (handled) {
             // Cancel pending listen (outgoing call)
             if (not incoming)
-                dht_.cancelListen(pc_iter->call_key, pc_iter->listen_key.get());
+                dht_.cancelListen(pc_iter->call_key, pc_iter->listen_key.share());
             pc_iter = pending_calls.erase(pc_iter);
         } else
             ++pc_iter;