]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-4166
authorAnthony Minessale <anthm@freeswitch.org>
Mon, 30 Apr 2012 23:13:32 +0000 (18:13 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Mon, 30 Apr 2012 23:13:32 +0000 (18:13 -0500)
src/switch_ivr_bridge.c

index 45155744ff39f30ad6e4beff17f9bcf754a4e129..dc95a4311499dfd0c9f5dc7ccd677e07f1fe3506 100644 (file)
@@ -660,13 +660,15 @@ static switch_status_t audio_bridge_on_exchange_media(switch_core_session_t *ses
                if (!switch_channel_test_flag(channel, CF_TRANSFER) && !switch_channel_test_flag(channel, CF_REDIRECT) &&
                        !switch_channel_test_flag(channel, CF_XFER_ZOMBIE) && bd && !bd->clean_exit
                        && state != CS_PARK && state != CS_ROUTING && state == CS_EXCHANGE_MEDIA && !switch_channel_test_flag(channel, CF_INNER_BRIDGE)) {
-                       if (switch_channel_test_flag(channel, CF_INTERCEPT) && !switch_channel_test_flag(channel, CF_INTERCEPTED)) {
-                               switch_channel_hangup(channel, SWITCH_CAUSE_PICKED_OFF);
-                       } else {
-                               if (!switch_channel_test_flag(channel, CF_ANSWERED)) {
-                                       switch_channel_hangup(channel, SWITCH_CAUSE_ORIGINATOR_CANCEL);
+                       if (!switch_channel_test_flag(channel, CF_INTERCEPTED)) {
+                               if (switch_channel_test_flag(channel, CF_INTERCEPT)) {
+                                       switch_channel_hangup(channel, SWITCH_CAUSE_PICKED_OFF);
                                } else {
-                                       switch_channel_hangup(channel, SWITCH_CAUSE_NORMAL_CLEARING);
+                                       if (!switch_channel_test_flag(channel, CF_ANSWERED)) {
+                                               switch_channel_hangup(channel, SWITCH_CAUSE_ORIGINATOR_CANCEL);
+                                       } else {
+                                               switch_channel_hangup(channel, SWITCH_CAUSE_NORMAL_CLEARING);
+                                       }
                                }
                        }
                }