fix race on creating new session thread vs. setting init state causing hung channels

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5841 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2007-10-11 19:12:18 +00:00
parent 5e81b98eba
commit 19d18e46ba
1 changed files with 5 additions and 1 deletions

View File

@ -431,7 +431,11 @@ SWITCH_DECLARE(void) switch_core_session_run(switch_core_session_t *session)
if (midstate == endstate) {
switch_thread_cond_wait(session->cond, session->mutex);
if (endstate == CS_NEW) {
switch_yield(1000);
} else {
switch_thread_cond_wait(session->cond, session->mutex);
}
}
}