From d0749e9a26aee0f5996124077a83cb91f63cabe7 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Tue, 11 Jun 2013 11:38:18 -0500 Subject: [PATCH] FS-5500 --resolve --- .../applications/mod_dptools/mod_dptools.c | 20 +++++++------------ 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/src/mod/applications/mod_dptools/mod_dptools.c b/src/mod/applications/mod_dptools/mod_dptools.c index 52c94633bf..7bf17d4018 100755 --- a/src/mod/applications/mod_dptools/mod_dptools.c +++ b/src/mod/applications/mod_dptools/mod_dptools.c @@ -3099,17 +3099,16 @@ SWITCH_STANDARD_APP(audio_bridge_function) return; } else { + switch_channel_t *peer_channel = switch_core_session_get_channel(peer_session); + if (switch_true(switch_channel_get_variable(caller_channel, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE)) || + switch_true(switch_channel_get_variable(peer_channel, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE))) { + switch_channel_set_flag(caller_channel, CF_BYPASS_MEDIA_AFTER_BRIDGE); + } + if (switch_channel_test_flag(caller_channel, CF_PROXY_MODE)) { - switch_channel_t *peer_channel = switch_core_session_get_channel(peer_session); - if (switch_true(switch_channel_get_variable(caller_channel, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE)) || - switch_true(switch_channel_get_variable(peer_channel, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE))) { - switch_channel_set_flag(caller_channel, CF_BYPASS_MEDIA_AFTER_BRIDGE); - } switch_ivr_signal_bridge(session, peer_session); } else { - switch_channel_t *channel = switch_core_session_get_channel(session); - switch_channel_t *peer_channel = switch_core_session_get_channel(peer_session); - char *a_key = (char *) switch_channel_get_variable(channel, "bridge_terminate_key"); + char *a_key = (char *) switch_channel_get_variable(caller_channel, "bridge_terminate_key"); char *b_key = (char *) switch_channel_get_variable(peer_channel, "bridge_terminate_key"); int ok = 0; switch_input_callback_function_t func = NULL; @@ -3129,11 +3128,6 @@ SWITCH_STANDARD_APP(audio_bridge_function) b_key = NULL; } - if (switch_true(switch_channel_get_variable(caller_channel, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE)) || - switch_true(switch_channel_get_variable(peer_channel, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE))) { - switch_channel_set_flag(caller_channel, CF_BYPASS_MEDIA_AFTER_BRIDGE); - } - switch_ivr_multi_threaded_bridge(session, peer_session, func, a_key, b_key); } -- 2.47.2