Author: anthm Date: Mon Apr 6 13:34:31 2009 New Revision: 12918 Log: don't answer in this case Modified: freeswitch/trunk/src/switch_ivr_bridge.c Modified: freeswitch/trunk/src/switch_ivr_bridge.c ============================================================================== --- freeswitch/trunk/src/switch_ivr_bridge.c (original) +++ freeswitch/trunk/src/switch_ivr_bridge.c Mon Apr 6 13:34:31 2009 @@ -324,12 +324,14 @@ if (ans_a != ans_b) { switch_channel_t *un = ans_a ? chan_b : chan_a; - if (switch_channel_answer(un) != SWITCH_STATUS_SUCCESS) { - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "%s Media Establishment Failed.\n", switch_channel_get_name(un)); - goto end_of_bridge_loop; + if (!switch_channel_test_flag(un, CF_OUTBOUND)) { + if (switch_channel_answer(un) != SWITCH_STATUS_SUCCESS) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "%s Media Establishment Failed.\n", switch_channel_get_name(un)); + goto end_of_bridge_loop; + } + + if (ans_a) ans_b = 1; else ans_a = 1; } - - if (ans_a) ans_b = 1; else ans_a = 1; }
participants (1)
-
FreeSWITCH SVN