diff options
author | Liong Sauw Ming <ming@teluu.com> | 2014-04-30 15:04:12 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2014-04-30 15:04:12 +0000 |
commit | 265eb98a5593f52bacdf6b4a03d1f0cfae795d10 (patch) | |
tree | eb63fb1760aa57333f41127a1563b363121af553 | |
parent | 88ae49c716c90975e9fcb1bfa96716576a5da172 (diff) |
Fixed #1764: Use latest early media SDP received on forked early media on 18x response
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4830 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r-- | pjsip/src/pjsip-ua/sip_inv.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/pjsip/src/pjsip-ua/sip_inv.c b/pjsip/src/pjsip-ua/sip_inv.c index 7f9e0e26..380a418e 100644 --- a/pjsip/src/pjsip-ua/sip_inv.c +++ b/pjsip/src/pjsip-ua/sip_inv.c @@ -1833,7 +1833,8 @@ static pj_status_t inv_check_sdp_in_incoming_msg( pjsip_inv_session *inv, */ if (tsx->role == PJSIP_ROLE_UAC && (st_code/100 == 2 || - (st_code==183 && pjsip_cfg()->endpt.follow_early_media_fork)) && + (st_code/10 == 18 /* st_code == 18x */ + && pjsip_cfg()->endpt.follow_early_media_fork)) && tsx_inv_data->done_early && pj_stricmp(&tsx_inv_data->done_tag, &res_tag)) { @@ -1842,7 +1843,7 @@ static pj_status_t inv_check_sdp_in_incoming_msg( pjsip_inv_session *inv, PJ_LOG(4,(inv->obj_name, "Received forked %s response " "after SDP negotiation has been done in early " "media. Renegotiating SDP..", - (st_code==183? "early" : "final" ))); + (st_code/10==18? "early" : "final" ))); /* Retrieve original SDP offer from INVITE request */ reoffer_sdp = (const pjmedia_sdp_session*) @@ -1855,7 +1856,7 @@ static pj_status_t inv_check_sdp_in_incoming_msg( pjsip_inv_session *inv, reoffer_sdp); if (status != PJ_SUCCESS) { PJ_LOG(1,(inv->obj_name, "Error updating local offer for " - "forked 2xx/183 response (err=%d)", status)); + "forked 2xx/18x response (err=%d)", status)); return status; } |