summaryrefslogtreecommitdiff
path: root/zaptel-base.c
diff options
context:
space:
mode:
authorkpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2007-07-19 01:02:53 +0000
committerkpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2007-07-19 01:02:53 +0000
commit014022870bc6068c2c6b503133565289075c9c30 (patch)
treea13cd3865425e1f17c2e0304640d2452ab821ec2 /zaptel-base.c
parent7aedb1abb4eeb7b9b0f9891ce31073249b5a892c (diff)
don't try to timeslot-interchange channels that are being bridged (DACS) if either channel has a txgain or rxgain specified, since that gain won't be applied any longer if the DACS is put into effect
git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.2@2752 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'zaptel-base.c')
-rw-r--r--zaptel-base.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/zaptel-base.c b/zaptel-base.c
index 695bc3f..256a66a 100644
--- a/zaptel-base.c
+++ b/zaptel-base.c
@@ -3853,8 +3853,13 @@ static int zt_chanandpseudo_ioctl(struct inode *inode, struct file *file, unsign
zt_check_conf(j);
zt_check_conf(stack.conf.confno);
if (chans[i]->span && chans[i]->span->dacs) {
- if (((stack.conf.confmode & ZT_CONF_MODE_MASK) == ZT_CONF_DIGITALMON) && chans[stack.conf.confno]->span &&
- (chans[stack.conf.confno]->span->dacs == chans[i]->span->dacs)) {
+ if (((stack.conf.confmode & ZT_CONF_MODE_MASK) == ZT_CONF_DIGITALMON) &&
+ chans[stack.conf.confno]->span &&
+ chans[stack.conf.confno]->span->dacs == chans[i]->span->dacs &&
+ chans[i]->txgain == defgain &&
+ chans[i]->rxgain == defgain &&
+ chans[stack.conf.confno]->txgain == defgain &&
+ chans[stack.conf.confno]->rxgain == defgain) {
chans[i]->span->dacs(chans[i], chans[stack.conf.confno]);
} else {
chans[i]->span->dacs(chans[i], NULL);