freetdm: only set ec call end when the HANGUP state is confirmed
This commit is contained in:
parent
22b3d34d55
commit
f734891d75
|
@ -2175,8 +2175,6 @@ static ftdm_status_t _ftdm_channel_call_hangup_nl(const char *file, const char *
|
||||||
{
|
{
|
||||||
ftdm_status_t status = FTDM_SUCCESS;
|
ftdm_status_t status = FTDM_SUCCESS;
|
||||||
|
|
||||||
ftdm_set_echocancel_call_end(chan);
|
|
||||||
|
|
||||||
if (chan->state != FTDM_CHANNEL_STATE_DOWN) {
|
if (chan->state != FTDM_CHANNEL_STATE_DOWN) {
|
||||||
if (chan->state == FTDM_CHANNEL_STATE_HANGUP) {
|
if (chan->state == FTDM_CHANNEL_STATE_HANGUP) {
|
||||||
/* make user's life easier, and just ignore double hangup requests */
|
/* make user's life easier, and just ignore double hangup requests */
|
||||||
|
|
|
@ -83,6 +83,8 @@ FT_DECLARE(ftdm_status_t) _ftdm_channel_complete_state(const char *file, const c
|
||||||
msg.channel = fchan;
|
msg.channel = fchan;
|
||||||
msg.event_id = FTDM_SIGEVENT_DIALING;
|
msg.event_id = FTDM_SIGEVENT_DIALING;
|
||||||
ftdm_span_send_signal(fchan->span, &msg);
|
ftdm_span_send_signal(fchan->span, &msg);
|
||||||
|
} else if (state == FTDM_CHANNEL_STATE_HANGUP) {
|
||||||
|
ftdm_set_echocancel_call_end(fchan);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* MAINTENANCE WARNING
|
/* MAINTENANCE WARNING
|
||||||
|
|
Loading…
Reference in New Issue