diff --git a/src/sip/sipcall.cpp b/src/sip/sipcall.cpp
index d2a046d40b078b620389a9ee1bca8c11625a0d24..174b149d4f61e91b5596bc4c9ffa7e0f5e7e17d8 100644
--- a/src/sip/sipcall.cpp
+++ b/src/sip/sipcall.cpp
@@ -825,10 +825,7 @@ SIPCall::sendKeyframe()
 void
 SIPCall::onPeerRinging()
 {
-    runOnMainThread([w = weak()] {
-        if (auto shared = w.lock())
-            shared->setState(ConnectionState::RINGING);
-    });
+    setState(ConnectionState::RINGING);
 }
 
 void