diff --git a/src/sip/sipaccount.cpp b/src/sip/sipaccount.cpp
index 0485aeee15ee8e1a16e3ac742f1aaede46a8ac7c..e2a8bdd614a4dc66155991d3522e3965c4064a0a 100644
--- a/src/sip/sipaccount.cpp
+++ b/src/sip/sipaccount.cpp
@@ -1412,13 +1412,15 @@ std::string SIPAccount::getServerUri() const
 pj_str_t
 SIPAccount::getContactHeader(pjsip_transport* t)
 {
+    if (contact_.slen and contactOverwritten_)
+        return contact_;
+
     if (!t && transport_)
         t = transport_->get();
-    if (!t)
+    if (!t) {
         RING_ERR("Transport not created yet");
-
-    if (contact_.slen and contactOverwritten_)
-        return contact_;
+        return {};
+    }
 
     // The transport type must be specified, in our case START_OTHER refers to stun transport
     pjsip_transport_type_e transportType = transportType_;