]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
tweak
authorAnthony Minessale <anthony.minessale@gmail.com>
Tue, 19 Aug 2008 19:24:00 +0000 (19:24 +0000)
committerAnthony Minessale <anthony.minessale@gmail.com>
Tue, 19 Aug 2008 19:24:00 +0000 (19:24 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9322 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/switch_ivr_bridge.c

index 92b9009d001f1d8e7dd1afc33c4714384e85cfb6..def532e10a7b81948d39a21e4fecfbccd42aae91 100644 (file)
@@ -466,6 +466,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio
                switch_channel_t *other_channel = switch_core_session_get_channel(other_session);
                switch_event_t *event;
                uint8_t ready_a, ready_b;
+               switch_channel_state_t state;
 
                switch_channel_set_variable(channel, SWITCH_UUID_BRIDGE, NULL);
 
@@ -524,7 +525,9 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio
                }
 
                switch_ivr_multi_threaded_bridge(session, other_session, NULL, NULL, NULL);
-               if (switch_channel_get_state(channel) < CS_HANGUP) {
+
+               state = switch_channel_get_state(channel);
+               if (state < CS_HANGUP && state != CS_ROUTING && state != CS_PARK) {
                        switch_channel_set_state(channel, CS_EXECUTE);
                }
                switch_core_session_rwunlock(other_session);