From fd8106afcfe09ca3c435bfaf26fb0553728aa2bf Mon Sep 17 00:00:00 2001 From: Michael Jerris Date: Fri, 26 Jun 2009 19:56:10 +0000 Subject: [PATCH] Thu Jun 25 12:34:42 CDT 2009 Pekka Pessi * nua_server.c: replying 200 OK to BYE left unreplied upon nua_handle_destroy git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13986 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- libs/sofia-sip/.update | 2 +- libs/sofia-sip/libsofia-sip-ua/nua/nua_server.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) 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;