mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-17 09:12:25 +00:00
FS-5399 --resolve
This commit is contained in:
parent
4f8faf9b78
commit
3fc8f7888a
@ -332,6 +332,7 @@ typedef enum {
|
|||||||
TFLAG_INB_NOMEDIA,
|
TFLAG_INB_NOMEDIA,
|
||||||
TFLAG_LATE_NEGOTIATION,
|
TFLAG_LATE_NEGOTIATION,
|
||||||
TFLAG_SDP,
|
TFLAG_SDP,
|
||||||
|
TFLAG_NEW_SDP,
|
||||||
TFLAG_VIDEO,
|
TFLAG_VIDEO,
|
||||||
TFLAG_TPORT_LOG,
|
TFLAG_TPORT_LOG,
|
||||||
TFLAG_SENT_UPDATE,
|
TFLAG_SENT_UPDATE,
|
||||||
|
@ -5704,6 +5704,7 @@ static void sofia_handle_sip_i_state(switch_core_session_t *session, int status,
|
|||||||
sdp_parser_free(parser);
|
sdp_parser_free(parser);
|
||||||
}
|
}
|
||||||
sofia_glue_pass_sdp(tech_pvt, (char *) r_sdp);
|
sofia_glue_pass_sdp(tech_pvt, (char *) r_sdp);
|
||||||
|
sofia_set_flag(tech_pvt, TFLAG_NEW_SDP);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -6261,11 +6262,12 @@ static void sofia_handle_sip_i_state(switch_core_session_t *session, int status,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case nua_callstate_ready:
|
case nua_callstate_ready:
|
||||||
if (r_sdp && !is_dup_sdp && switch_rtp_ready(tech_pvt->rtp_session) && !sofia_test_flag(tech_pvt, TFLAG_NOSDP_REINVITE)) {
|
if (r_sdp && (!is_dup_sdp || sofia_test_flag(tech_pvt, TFLAG_NEW_SDP)) && switch_rtp_ready(tech_pvt->rtp_session) && !sofia_test_flag(tech_pvt, TFLAG_NOSDP_REINVITE)) {
|
||||||
/* sdp changed since 18X w sdp, we're supposed to ignore it but we, of course, were pressured into supporting it */
|
/* sdp changed since 18X w sdp, we're supposed to ignore it but we, of course, were pressured into supporting it */
|
||||||
uint8_t match = 0;
|
uint8_t match = 0;
|
||||||
|
|
||||||
sofia_set_flag_locked(tech_pvt, TFLAG_REINVITE);
|
sofia_set_flag_locked(tech_pvt, TFLAG_REINVITE);
|
||||||
|
sofia_clear_flag(tech_pvt, TFLAG_NEW_SDP);
|
||||||
|
|
||||||
if (tech_pvt->num_codecs) {
|
if (tech_pvt->num_codecs) {
|
||||||
match = sofia_glue_negotiate_sdp(session, r_sdp);
|
match = sofia_glue_negotiate_sdp(session, r_sdp);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user