mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-08-13 09:36:46 +00:00
freetdm: core - changed behavior of ftdm_channel_close(). instead of returning if the channel isn't
opened, not it prints a warning and proceeds to close it. ftmod_r2 - added handler for FTDM_CHANNEL_STATE_RESET state
This commit is contained in:
@@ -2726,14 +2726,13 @@ FT_DECLARE(ftdm_status_t) ftdm_channel_close(ftdm_channel_t **ftdmchan)
|
||||
|
||||
if (ftdm_test_flag(check, FTDM_CHANNEL_CONFIGURED)) {
|
||||
ftdm_mutex_lock(check->mutex);
|
||||
if (ftdm_test_flag(check, FTDM_CHANNEL_OPEN)) {
|
||||
status = check->fio->close(check);
|
||||
if (status == FTDM_SUCCESS) {
|
||||
ftdm_channel_done(check);
|
||||
*ftdmchan = NULL;
|
||||
}
|
||||
} else {
|
||||
ftdm_log_chan_msg(check, FTDM_LOG_WARNING, "Called ftdm_channel_close but never ftdm_channel_open??\n");
|
||||
if (!ftdm_test_flag(check, FTDM_CHANNEL_OPEN)) {
|
||||
ftdm_log_chan_msg(check, FTDM_LOG_WARNING, "Channel not opened, proceeding anyway\n");
|
||||
}
|
||||
status = check->fio->close(check);
|
||||
if (status == FTDM_SUCCESS) {
|
||||
ftdm_channel_done(check);
|
||||
*ftdmchan = NULL;
|
||||
}
|
||||
check->ring_count = 0;
|
||||
ftdm_mutex_unlock(check->mutex);
|
||||
|
Reference in New Issue
Block a user