diff --git a/src/contactmodel.cpp b/src/contactmodel.cpp
index 966ecfb62fb741a065aab95b6f22c546989268d0..c7fd585dfca4473b546651cd0763f813527a5629 100644
--- a/src/contactmodel.cpp
+++ b/src/contactmodel.cpp
@@ -479,10 +479,11 @@ ContactModelPimpl::searchSipContact(const URI& query)
         return;
     }
 
-    auto& temporaryContact = searchResult[query];
     {
         std::lock_guard<std::mutex> lk(contactsMtx_);
         if (contacts.find(uriID) == contacts.end()) {
+            auto& temporaryContact = searchResult[query];
+
             temporaryContact.profileInfo.uri = uriID;
             temporaryContact.profileInfo.alias = uriID;
             temporaryContact.profileInfo.type = profile::Type::TEMPORARY;