diff --git a/src/contactmodel.cpp b/src/contactmodel.cpp
index 0f043043c5573b96ebf5a6da0e5a1c95978d5979..2a716dcff86840e83a6df04300c892300ab0dd23 100644
--- a/src/contactmodel.cpp
+++ b/src/contactmodel.cpp
@@ -523,14 +523,14 @@ ContactModel::sendDhtMessage(const QString& contactUri, const QString& body) con
 const QString
 ContactModel::bestNameForContact(const QString& contactUri) const
 {
-    std::lock_guard<std::mutex> lk(pimpl_->contactsMtx_);
-    if (pimpl_->contacts.contains(contactUri)) {
-        auto contact = pimpl_->contacts.value(contactUri);
+    try {
+        auto contact = getContact(contactUri);
         auto alias = contact.profileInfo.alias.simplified();
         if (alias.isEmpty()) {
             return bestIdFromContactInfo(contact);
         }
         return alias;
+    } catch(const std::out_of_range&) {
     }
     return contactUri;
 }