Thu May 22 10:45:32 EDT 2008 Pekka.Pessi@nokia.com
* nua_session.c: handling answer better by nua_prack_server_init() Fixed klocwork issue, too. git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@8639 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
47d689784d
commit
17b5b79f14
|
@ -1 +1 @@
|
||||||
Sun May 25 11:22:40 EDT 2008
|
Sun May 25 11:23:06 EDT 2008
|
||||||
|
|
|
@ -2694,19 +2694,22 @@ int nua_prack_server_init(nua_server_request_t *sr)
|
||||||
return sr->sr_status;
|
return sr->sr_status;
|
||||||
|
|
||||||
if (sr->sr_sdp) {
|
if (sr->sr_sdp) {
|
||||||
nua_session_usage_t *ss = nua_dialog_usage_private(sr->sr_usage);
|
nua_session_usage_t *ss = NUA_DIALOG_USAGE_PRIVATE(sr->sr_usage);
|
||||||
|
char const *offeranswer;
|
||||||
|
|
||||||
/* XXX - check for overlap? */
|
/* XXX - check for overlap? */
|
||||||
|
|
||||||
if (sri->sr_offer_sent)
|
if (sri->sr_offer_sent && !sri->sr_answer_recv)
|
||||||
sr->sr_answer_recv = 1, ss->ss_oa_recv = Answer;
|
sr->sr_answer_recv = 1, sri->sr_answer_recv = 1, offeranswer = Answer;
|
||||||
else
|
else
|
||||||
sr->sr_offer_recv = 1, ss->ss_oa_recv = Offer;
|
sr->sr_offer_recv = 1, offeranswer = Offer;
|
||||||
|
|
||||||
|
ss->ss_oa_recv = offeranswer;
|
||||||
|
|
||||||
if (nh->nh_soa &&
|
if (nh->nh_soa &&
|
||||||
soa_set_remote_sdp(nh->nh_soa, NULL, sr->sr_sdp, sr->sr_sdp_len) < 0) {
|
soa_set_remote_sdp(nh->nh_soa, NULL, sr->sr_sdp, sr->sr_sdp_len) < 0) {
|
||||||
SU_DEBUG_5(("nua(%p): %s server: error parsing %s\n", (void *)nh,
|
SU_DEBUG_5(("nua(%p): %s server: error parsing %s\n", (void *)nh,
|
||||||
"PRACK", Offer));
|
"PRACK", offeranswer));
|
||||||
return
|
return
|
||||||
sr->sr_status = soa_error_as_sip_response(nh->nh_soa, &sr->sr_phrase);
|
sr->sr_status = soa_error_as_sip_response(nh->nh_soa, &sr->sr_phrase);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue