diff --git a/libs/sofia-sip/.update b/libs/sofia-sip/.update index 1bb752eb7a..fe223acfa3 100644 --- a/libs/sofia-sip/.update +++ b/libs/sofia-sip/.update @@ -1 +1 @@ -Fri Jun 26 14:53:27 CDT 2009 +Fri Jun 26 14:54:58 CDT 2009 diff --git a/libs/sofia-sip/libsofia-sip-ua/nua/nua_server.c b/libs/sofia-sip/libsofia-sip-ua/nua/nua_server.c index 35e3eb8a5e..840f1bf878 100644 --- a/libs/sofia-sip/libsofia-sip-ua/nua/nua_server.c +++ b/libs/sofia-sip/libsofia-sip-ua/nua/nua_server.c @@ -299,8 +299,12 @@ void nua_server_request_destroy(nua_server_request_t *sr) if (SR_HAS_SAVED_SIGNAL(sr)) nua_destroy_signal(sr->sr_signal); - if (sr->sr_irq) + if (sr->sr_irq) { + if (sr->sr_method == sip_method_bye && sr->sr_status < 200) { + nta_incoming_treply(sr->sr_irq, SIP_200_OK, TAG_END()); + } nta_incoming_destroy(sr->sr_irq), sr->sr_irq = NULL; + } if (sr->sr_request.msg) msg_destroy(sr->sr_request.msg), sr->sr_request.msg = NULL;