diff --git a/src/sip/sipaccount.cpp b/src/sip/sipaccount.cpp
index 695b71839e13684b3dd4f8aa4b7e9d177441a4b1..e544ac31a5d515f4ac5090425cba3aa99a03d3ad 100644
--- a/src/sip/sipaccount.cpp
+++ b/src/sip/sipaccount.cpp
@@ -789,7 +789,8 @@ SIPAccount::sendRegister()
     if (pjsip_regc_set_transport(regc, &tp_sel) != PJ_SUCCESS)
         throw VoipLinkException("Unable to set transport");
 
-    setUpTransmissionData(tdata, tp_sel.u.transport->key.type);
+    if (tp_sel.u.transport)
+        setUpTransmissionData(tdata, tp_sel.u.transport->key.type);
 
     // pjsip_regc_send increment the transport ref count by one,
     if ((status = pjsip_regc_send(regc, tdata)) != PJ_SUCCESS) {