[Freeswitch-svn] [commit] r3879 - freeswitch/trunk/src
Author: anthm Date: Sun Dec 31 16:06:03 2006 New Revision: 3879 Modified: freeswitch/trunk/src/switch_ivr.c Log: fix hold issue reported by irate anonymous guy on irc Modified: freeswitch/trunk/src/switch_ivr.c ============================================================================== --- freeswitch/trunk/src/switch_ivr.c (original) +++ freeswitch/trunk/src/switch_ivr.c Sun Dec 31 16:06:03 2006 @@ -1301,7 +1301,7 @@ } else { /* time off the channel (if you must) */ switch_frame_t *read_frame; switch_status_t status; - while (switch_channel_test_flag(channel, CF_HOLD)) { + while (switch_channel_ready(channel) && switch_channel_test_flag(channel, CF_HOLD)) { switch_yield(10000); } status = switch_core_session_read_frame(session, &read_frame, -1, 0); @@ -1604,7 +1604,7 @@ switch_frame_t *read_frame; switch_status_t status = switch_core_session_read_frame(session, &read_frame, -1, 0); - while (switch_channel_test_flag(channel, CF_HOLD)) { + while (switch_channel_ready(channel) && switch_channel_test_flag(channel, CF_HOLD)) { switch_yield(10000); } @@ -1661,7 +1661,7 @@ switch_frame_t *read_frame; switch_status_t status = switch_core_session_read_frame(session, &read_frame, -1, 0); - while (switch_channel_test_flag(channel, CF_HOLD)) { + while (switch_channel_ready(channel) && switch_channel_test_flag(channel, CF_HOLD)) { switch_yield(10000); }
participants (1)
-
Freeswitch SVN