summaryrefslogtreecommitdiffstats
path: root/mISDN.cpp
diff options
context:
space:
mode:
authorSuper User2007-09-23 09:43:30 +0200
committerSuper User2007-09-23 09:43:30 +0200
commit59b8aa319440a9e58976cc921775889a27eb5347 (patch)
treec140169f156b9237f66cdb2b609528f881e726ce /mISDN.cpp
parentfixed multiplexing bug at NT-mode. (diff)
downloadlcr-59b8aa319440a9e58976cc921775889a27eb5347.tar.gz
lcr-59b8aa319440a9e58976cc921775889a27eb5347.tar.xz
lcr-59b8aa319440a9e58976cc921775889a27eb5347.zip
removed some usleep debugging, so audioprocessing will not hang
Diffstat (limited to 'mISDN.cpp')
-rw-r--r--mISDN.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/mISDN.cpp b/mISDN.cpp
index 0abffd6..7a95c9f 100644
--- a/mISDN.cpp
+++ b/mISDN.cpp
@@ -1971,7 +1971,7 @@ int PmISDN::message_epoint(unsigned long epoint_id, int message_id, union parame
#ifdef SOCKET_MISDN
int mISDN_handler(void)
{
- int ret;
+ int ret, work = 0;
struct mISDNport *mISDNport;
class PmISDN *isdnport;
int i;
@@ -2050,6 +2050,7 @@ int mISDN_handler(void)
ret = recv(mISDNport->b_stack[i], buffer, sizeof(buffer), 0);
if (ret >= MISDN_HEADER_LEN)
{
+ work = 1;
switch(hh->prim)
{
/* we don't care about confirms, we use rx data to sync tx */
@@ -2060,6 +2061,7 @@ int mISDN_handler(void)
/* we receive audio data, we respond to it AND we send tones */
case PH_DATA_IND:
case DL_DATA_IND:
+ case PH_SIGNAL_IND:
case PH_CONTROL_IND:
if (mISDNport->b_port[i])
mISDNport->b_port[i]->bchannel_receive(hh, buffer+MISDN_HEADER_LEN, ret-MISDN_HEADER_LEN);
@@ -2120,6 +2122,8 @@ int mISDN_handler(void)
mISDNport = mISDNport->next;
}
+ /* if we received at least one b-frame, we will return 1 */
+ return(work);
}
#else
int mISDN_handler(void)