fix hold issue reported by irate anonymous guy on irc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3879 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
18c3fe5cf9
commit
c12438b06b
|
@ -1301,7 +1301,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_play_file(switch_core_session_t *sess
|
|||
} 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_DECLARE(switch_status_t) switch_ivr_speak_text_handle(switch_core_session
|
|||
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_DECLARE(switch_status_t) switch_ivr_speak_text_handle(switch_core_session
|
|||
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);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue