]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-3932 --resolve the change in switch_ivr_bridge was your issue
authorAnthony Minessale <anthm@freeswitch.org>
Thu, 23 Feb 2012 03:48:03 +0000 (21:48 -0600)
committerAnthony Minessale <anthm@freeswitch.org>
Thu, 23 Feb 2012 03:48:03 +0000 (21:48 -0600)
src/mod/applications/mod_dptools/mod_dptools.c
src/switch_ivr_bridge.c

index 8067e98675191c90f27ec5f9f0df1bf39a6004ba..246295f0fe6091645110457bde40417c9e958723 100755 (executable)
@@ -2902,6 +2902,12 @@ SWITCH_STANDARD_APP(audio_bridge_function)
                                                                                v_campon_fallback_exten,
                                                                                switch_channel_get_variable(caller_channel, "campon_fallback_dialplan"),
                                                                                switch_channel_get_variable(caller_channel, "campon_fallback_context"));
+
+                       if (peer_session) {
+                               switch_channel_hangup(switch_core_session_get_channel(peer_session), SWITCH_CAUSE_ORIGINATOR_CANCEL);
+                               switch_core_session_rwunlock(peer_session);
+                       }
+
                        return;
                }
 
index 3096f9cf92fa9daaa95676ba2c3b69558f69562b..266fa8d187a5dce110d85e2ff63d567d79354803 100644 (file)
@@ -1244,6 +1244,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_multi_threaded_bridge(switch_core_ses
 
                        if (!switch_channel_ready(caller_channel)) {
                                abort_call(caller_channel, peer_channel);
+                               switch_core_session_rwunlock(peer_session);
                                goto done;
                        }