diff --git a/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c b/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c
index f17808ee09..f7e862e367 100644
--- a/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c
+++ b/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c
@@ -2043,8 +2043,20 @@ int nua_invite_server_report(nua_server_request_t *sr, tagi_t const *tags)
}
assert(ss);
+#if 1
assert(ss->ss_state != nua_callstate_calling);
assert(ss->ss_state != nua_callstate_proceeding);
+#else
+// assert(ss->ss_state != nua_callstate_calling);
+// assert(ss->ss_state != nua_callstate_proceeding);
+ if(ss->ss_state == nua_callstate_calling || ss->ss_state != nua_callstate_proceeding) {
+ /* somthing is badly wrong here. Lets kill it gracefully for now */
+ sr_status(sr, SIP_500_INTERNAL_SERVER_ERROR);
+ signal_call_state_change(nh, NULL, status, phrase,
+ nua_callstate_terminated);
+ return retval;
+ }
+#endif
/* Update session state */
if (status < 300 || application != 0)
diff --git a/libs/win32/sofia/libsofia_sip_ua_static.vcproj b/libs/win32/sofia/libsofia_sip_ua_static.vcproj
index a6fac3b8fe..151ff12c45 100644
--- a/libs/win32/sofia/libsofia_sip_ua_static.vcproj
+++ b/libs/win32/sofia/libsofia_sip_ua_static.vcproj
@@ -256,6 +256,10 @@
RelativePath="..\..\sofia-sip\libsofia-sip-ua\su\su_root.c"
>
+
+
diff --git a/src/mod/endpoints/mod_sofia/mod_sofia.vcproj b/src/mod/endpoints/mod_sofia/mod_sofia.vcproj
index 64af4fbc26..f97fa5c96e 100644
--- a/src/mod/endpoints/mod_sofia/mod_sofia.vcproj
+++ b/src/mod/endpoints/mod_sofia/mod_sofia.vcproj
@@ -65,7 +65,7 @@
/>