From: David Yat Sin Date: Mon, 31 Oct 2011 14:25:07 +0000 (-0400) Subject: freetdm: Added some code to differentiate between wanpipe_wait returning FTDM_TIMEOUT... X-Git-Tag: v1.2-rc1~27^2~264 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5ee015610c1ffa42d82e722ede8da4080722fcfd;p=thirdparty%2Ffreeswitch.git freetdm: Added some code to differentiate between wanpipe_wait returning FTDM_TIMEOUT and FTDM_FAIL on transmit --- diff --git a/libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_rcv.c b/libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_rcv.c index 3788a9c25b..f5ff189ad7 100644 --- a/libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_rcv.c +++ b/libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_rcv.c @@ -897,12 +897,19 @@ int16_t sngisdn_rcv_l1_data_req(uint16_t spId, sng_l1_frame_t *l1_frame) do { flags = FTDM_WRITE; status = signal_data->dchan->fio->wait(signal_data->dchan, &flags, 1000); - if (status != FTDM_SUCCESS) { - ftdm_log_chan_msg(signal_data->dchan, FTDM_LOG_WARNING, "transmit timed-out\n"); - return -1; + switch(status) { + case FTDM_SUCCESS: + break; + case FTDM_TIMEOUT: + continue; + case FTDM_FAIL: + default: + ftdm_log_chan_msg(signal_data->dchan, FTDM_LOG_WARNING, "failed to poll for channel\n"); + return -1; } + /* status = FTDM_SUCCESS */ if ((flags & FTDM_WRITE)) { #if 0 int i;