From: Jeff Peeler Date: Wed, 2 Dec 2009 00:42:58 +0000 (+0000) Subject: Do not modify the gain settings on data calls. X-Git-Tag: 1.4.28-rc1~11^2~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=09c3005ca63b695ad7c1dfea09fd5b75af3f349c;p=thirdparty%2Fasterisk.git Do not modify the gain settings on data calls. (The digital flag actually represents a data call.) (closes issue #15972) Reported by: udosw Patches: transcap_digital_fix.diff.txt uploaded by alecdavis (license 585) Tested by: alecdavis git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@232090 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 805d835825..67d0d1736f 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -2152,7 +2152,11 @@ static int dahdi_call(struct ast_channel *ast, char *rdest, int timeout) ast_log(LOG_WARNING, "Unable to flush input on channel %d: %s\n", p->channel, strerror(errno)); p->outgoing = 1; - set_actual_gain(p->subs[SUB_REAL].dfd, 0, p->rxgain, p->txgain, p->law); + if (IS_DIGITAL(ast->transfercapability)) { + set_actual_gain(p->subs[SUB_REAL].dfd, 0, 0, 0, p->law); + } else { + set_actual_gain(p->subs[SUB_REAL].dfd, 0, p->rxgain, p->txgain, p->law); + } mysig = p->sig; if (p->outsigmod > -1)