aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_dahdi.c
diff options
context:
space:
mode:
authorjpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b>2009-12-02 00:45:18 +0000
committerjpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b>2009-12-02 00:45:18 +0000
commit573194c9fe4ad66a490288d26799d9d090bfb73a (patch)
treecc66167fb0f7b664dd8f750b9e1081329d06820c /channels/chan_dahdi.c
parent0ff9b6558ace76c326abf6168416dad43e85431c (diff)
Merged revisions 232090 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r232090 | jpeeler | 2009-12-01 18:42:58 -0600 (Tue, 01 Dec 2009) | 10 lines 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: http://svn.digium.com/svn/asterisk/trunk@232091 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_dahdi.c')
-rw-r--r--channels/chan_dahdi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 40e7de230..707a9b21a 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -4602,7 +4602,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->rxdrc, p->txdrc, p->law);
+ if (IS_DIGITAL(ast->transfercapability)){
+ set_actual_gain(p->subs[SUB_REAL].dfd, 0, 0, 0, p->rxdrc, p->txdrc, p->law);
+ } else {
+ set_actual_gain(p->subs[SUB_REAL].dfd, 0, p->rxgain, p->txgain, p->rxdrc, p->txdrc, p->law);
+ }
#ifdef HAVE_PRI
if (dahdi_sig_pri_lib_handles(p->sig)) {