提交 7f70d131 authored 作者: Michael Jerris's avatar Michael Jerris

Fri Nov 21 08:12:28 CST 2008 Pekka Pessi <first.last@nokia.com>

  * nua_session.c: call soa_activate() only when nh->nh_soa is valid



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10830 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 833500ae
Tue Dec 16 15:19:47 CST 2008 Tue Dec 16 15:20:42 CST 2008
...@@ -1315,8 +1315,9 @@ int nua_invite_client_ack(nua_client_request_t *cr, tagi_t const *tags) ...@@ -1315,8 +1315,9 @@ int nua_invite_client_ack(nua_client_request_t *cr, tagi_t const *tags)
; ;
else if (nh->nh_soa && soa_is_complete(nh->nh_soa)) { else if (nh->nh_soa && soa_is_complete(nh->nh_soa)) {
/* signal SOA that O/A round(s) is (are) complete */ /* signal SOA that O/A round(s) is (are) complete */
if (soa_activate(nh->nh_soa, NULL) >= 0) if (soa_activate(nh->nh_soa, NULL) >= 0) {
ss->ss_sdp_version = soa_get_user_version(nh->nh_soa); ss->ss_sdp_version = soa_get_user_version(nh->nh_soa);
}
} }
else if (nh->nh_soa == NULL else if (nh->nh_soa == NULL
/* NUA does not necessarily know dirty details */ /* NUA does not necessarily know dirty details */
...@@ -1748,8 +1749,9 @@ static int nua_prack_client_request(nua_client_request_t *cr, ...@@ -1748,8 +1749,9 @@ static int nua_prack_client_request(nua_client_request_t *cr,
} }
else { else {
answer_sent = 1; answer_sent = 1;
if (soa_activate(nh->nh_soa, NULL) >= 0) if (soa_activate(nh->nh_soa, NULL) >= 0) {
ss->ss_sdp_version = soa_get_user_version(nh->nh_soa); ss->ss_sdp_version = soa_get_user_version(nh->nh_soa);
}
} }
} }
else if (nh->nh_soa == NULL) { else if (nh->nh_soa == NULL) {
...@@ -2326,8 +2328,9 @@ int nua_invite_server_respond(nua_server_request_t *sr, tagi_t const *tags) ...@@ -2326,8 +2328,9 @@ int nua_invite_server_respond(nua_server_request_t *sr, tagi_t const *tags)
else if (answer) else if (answer)
sr->sr_answer_sent = 1 + reliable, ss->ss_oa_sent = Answer; sr->sr_answer_sent = 1 + reliable, ss->ss_oa_sent = Answer;
if (answer && reliable) if (answer && reliable && nh->nh_soa) {
ss->ss_sdp_version = soa_get_user_version(nh->nh_soa); ss->ss_sdp_version = soa_get_user_version(nh->nh_soa);
}
} }
if (reliable && sr->sr_status < 200) { if (reliable && sr->sr_status < 200) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论