FS-3218 --resolve

This commit is contained in:
Anthony Minessale 2011-03-31 20:03:31 -05:00
parent 44304f4962
commit c5daf80ef8
1 changed files with 6 additions and 1 deletions

View File

@ -306,7 +306,12 @@ SWITCH_DECLARE(void) switch_core_session_run(switch_core_session_t *session)
while ((state = switch_channel_get_state(session->channel)) != CS_DESTROY) { while ((state = switch_channel_get_state(session->channel)) != CS_DESTROY) {
switch_channel_wait_for_flag(session->channel, CF_BLOCK_STATE, SWITCH_FALSE, 0, NULL); if (switch_channel_test_flag(session->channel, CF_BLOCK_STATE)) {
switch_channel_wait_for_flag(session->channel, CF_BLOCK_STATE, SWITCH_FALSE, 0, NULL);
if ((state = switch_channel_get_state(session->channel)) == CS_DESTROY) {
break;
}
}
midstate = state; midstate = state;
if (state != switch_channel_get_running_state(session->channel) || state >= CS_HANGUP) { if (state != switch_channel_get_running_state(session->channel) || state >= CS_HANGUP) {