提交 4b04032b authored 作者: Arnaldo Pereira's avatar Arnaldo Pereira

freetdm: ftmod_r2 - set the FTDM_CHANNEL_USER_HANGUP flag right before changing…

freetdm: ftmod_r2 - set the FTDM_CHANNEL_USER_HANGUP flag right before changing chan state to FTDM_CHANNEL_STATE_HANGUP
上级 7c3fd201
...@@ -2123,8 +2123,6 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(ftdm_channel_t *chan, const ch ...@@ -2123,8 +2123,6 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(ftdm_channel_t *chan, const ch
{ {
ftdm_status_t status = FTDM_SUCCESS; ftdm_status_t status = FTDM_SUCCESS;
ftdm_set_flag(chan, FTDM_CHANNEL_USER_HANGUP);
ftdm_set_echocancel_call_end(chan); ftdm_set_echocancel_call_end(chan);
if (chan->state != FTDM_CHANNEL_STATE_DOWN) { if (chan->state != FTDM_CHANNEL_STATE_DOWN) {
...@@ -2135,6 +2133,7 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(ftdm_channel_t *chan, const ch ...@@ -2135,6 +2133,7 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(ftdm_channel_t *chan, const ch
if (chan->hangup_timer) { if (chan->hangup_timer) {
ftdm_sched_cancel_timer(globals.timingsched, chan->hangup_timer); ftdm_sched_cancel_timer(globals.timingsched, chan->hangup_timer);
} }
ftdm_set_flag(chan, FTDM_CHANNEL_USER_HANGUP);
status = ftdm_channel_set_state(file, func, line, chan, FTDM_CHANNEL_STATE_HANGUP, 1); status = ftdm_channel_set_state(file, func, line, chan, FTDM_CHANNEL_STATE_HANGUP, 1);
} else { } else {
/* the signaling stack did not touch the state, /* the signaling stack did not touch the state,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论