提交 09792655 authored 作者: Moises Silva's avatar Moises Silva

improve sangoma boost test

git-svn-id: http://svn.openzap.org/svn/openzap/branches/sangoma_boost@1006 a93c3328-9c30-0410-af19-c9cd2b2d52af
上级 448d2e85
...@@ -976,6 +976,12 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_set_state(ftdm_channel_t *ftdmchan, ftdm_ ...@@ -976,6 +976,12 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_set_state(ftdm_channel_t *ftdmchan, ftdm_
} }
} }
if (ftdm_test_flag(ftdmchan, FTDM_CHANNEL_STATE_CHANGE)) {
ftdm_log(FTDM_LOG_WARNING, "Ignored state change request from %s to %s, the previous state change has not been processed yet\n",
ftdm_channel_state2str(ftdmchan->state), ftdm_channel_state2str(state));
return FTDM_FAIL;
}
if (lock) { if (lock) {
ftdm_mutex_lock(ftdmchan->mutex); ftdm_mutex_lock(ftdmchan->mutex);
} }
......
...@@ -276,6 +276,15 @@ extern "C" { ...@@ -276,6 +276,15 @@ extern "C" {
else ftdm_log(FTDM_LOG_WARNING, "VETO Changing state on %d:%d from %s to %s\n", obj->span_id, obj->chan_id, ftdm_channel_state2str(st), ftdm_channel_state2str(s)); \ else ftdm_log(FTDM_LOG_WARNING, "VETO Changing state on %d:%d from %s to %s\n", obj->span_id, obj->chan_id, ftdm_channel_state2str(st), ftdm_channel_state2str(s)); \
} }
#define ftdm_set_state(obj, s) if ( obj->state == s ) { \
ftdm_log(FTDM_LOG_WARNING, "Why bother changing state on %d:%d from %s to %s\n", obj->span_id, obj->chan_id, ftdm_channel_state2str(obj->state), ftdm_channel_state2str(s)); \
} else if (ftdm_test_flag(obj, FTDM_CHANNEL_READY)) { \
ftdm_channel_state_t st = obj->state; \
ftdm_channel_set_state(obj, s, 0); \
if (obj->state == s) ftdm_log(FTDM_LOG_DEBUG, "Changing state on %d:%d from %s to %s\n", obj->span_id, obj->chan_id, ftdm_channel_state2str(st), ftdm_channel_state2str(s)); \
else ftdm_log(FTDM_LOG_WARNING, "VETO Changing state on %d:%d from %s to %s\n", obj->span_id, obj->chan_id, ftdm_channel_state2str(st), ftdm_channel_state2str(s)); \
}
#ifdef _MSC_VER #ifdef _MSC_VER
/* The while(0) below throws a conditional expression is constant warning */ /* The while(0) below throws a conditional expression is constant warning */
#pragma warning(disable:4127) #pragma warning(disable:4127)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论