]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
fix cpp bridge
authorBrian West <brian@freeswitch.org>
Thu, 14 Aug 2008 18:19:41 +0000 (18:19 +0000)
committerBrian West <brian@freeswitch.org>
Thu, 14 Aug 2008 18:19:41 +0000 (18:19 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9298 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/switch_cpp.cpp

index 3a0a4e31d028b7235cd30f13afee8a724faff7e9..3b10ebc955f968b6b14481801d10d7995c2eec30 100644 (file)
@@ -1070,12 +1070,10 @@ SWITCH_DECLARE(void) bridge(CoreSession &session_a, CoreSession &session_b)
 
                if (switch_channel_ready(channel_a) && switch_channel_ready(channel_b)) {
                        session_a.begin_allow_threads();
-                       if (!switch_channel_test_flag(channel_a, CF_ANSWERED)) {
-                               switch_channel_answer(channel_a);
-                       }
-                       if (!switch_channel_test_flag(channel_b, CF_ANSWERED)) {
-                               switch_channel_answer(channel_b);
+                       if (!switch_channel_media_ready(channel_a)) {
+                               switch_channel_pre_answer(channel_a);
                        }
+
                        if (switch_channel_ready(channel_a) && switch_channel_ready(channel_b)) {
                                args = session_a.get_cb_args();  // get the cb_args data structure for session a
                                dtmf_func = args.input_callback;   // get the call back function