summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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);