diff --git a/src/sip/sipvoiplink.cpp b/src/sip/sipvoiplink.cpp
index c9288b75afb70a495fc1f431e73730b016992e36..548b91ba2d64207d1fa4f50973a397459839c59b 100644
--- a/src/sip/sipvoiplink.cpp
+++ b/src/sip/sipvoiplink.cpp
@@ -609,7 +609,9 @@ SIPVoIPLink::~SIPVoIPLink()
 
     pjsip_tpmgr_set_state_cb(pjsip_endpt_get_tpmgr(endpt_), nullptr);
     Manager::instance().unregisterEventHandler((uintptr_t)this);
-    handleEvents();
+    try {
+        handleEvents();
+    } catch (...) {}
 
     sipTransportBroker.reset();