finishing touch on nomedia with mutiple bridges

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4793 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2007-03-29 15:21:42 +00:00
parent 677ebfff2b
commit 6e2b76eb75
2 changed files with 3 additions and 5 deletions

View File

@ -61,7 +61,7 @@ static void audio_bridge_function(switch_core_session_t *session, char *data)
do_continue = switch_true(var);
}
if ((var = switch_channel_get_variable(caller_channel, "no_media")) && switch_true(var)) {
if (switch_channel_test_flag(caller_channel, CF_NOMEDIA) || ((var = switch_channel_get_variable(caller_channel, "no_media")) && switch_true(var))) {
if (!switch_channel_test_flag(caller_channel, CF_ANSWERED) && !switch_channel_test_flag(caller_channel, CF_EARLY_MEDIA)) {
switch_channel_set_flag(caller_channel, CF_NOMEDIA);
} else {

View File

@ -1268,7 +1268,7 @@ static void tech_absorb_sdp(private_object_t *tech_pvt)
channel = switch_core_session_get_channel(tech_pvt->session);
assert(channel != NULL);
if ((sdp_str = switch_channel_get_variable(channel, SWITCH_B_SDP_VARIABLE))) {
sdp_parser_t *parser;
sdp_session_t *sdp;
@ -2921,9 +2921,7 @@ static void pass_sdp(private_object_t *tech_pvt, char *sdp)
if ((val = switch_channel_get_variable(channel, SWITCH_SIGNAL_BOND_VARIABLE)) && (other_session = switch_core_session_locate(val))) {
other_channel = switch_core_session_get_channel(other_session);
assert(other_channel != NULL);
if (!switch_channel_get_variable(other_channel, SWITCH_B_SDP_VARIABLE)) {
switch_channel_set_variable(other_channel, SWITCH_B_SDP_VARIABLE, sdp);
}
switch_channel_set_variable(other_channel, SWITCH_B_SDP_VARIABLE, sdp);
if (!switch_test_flag(tech_pvt, TFLAG_CHANGE_MEDIA) && (
switch_channel_test_flag(other_channel, CF_OUTBOUND) &&