summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2004-11-07 16:21:01 +0000
committerMark Spencer <markster@digium.com>2004-11-07 16:21:01 +0000
commit134e6180c55d20b8dfa7068397936d0903d60a44 (patch)
treec49d88dc28e7688af27d41128811a3ba986bcf40 /channels
parentb9b38418857da733b7f5eaf1e630d7d8176e672c (diff)
Disable echo canceller for digital calls (bug #2785), fix build on MacOSX (bug #2803)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4170 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-xchannels/chan_zap.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index 4644bf095..2a8b95d74 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -1213,11 +1213,17 @@ static void zt_enable_ec(struct zt_pvt *p)
{
int x;
int res;
+ if (!p)
+ return;
if (p->echocanon) {
ast_log(LOG_DEBUG, "Echo cancellation already on\n");
return;
}
- if (p && p->echocancel) {
+ if (p->digital) {
+ ast_log(LOG_DEBUG, "Echo cancellation isn't required on digital connection\n");
+ return;
+ }
+ if (p->echocancel) {
if (p->sig == SIG_PRI) {
x = 1;
res = ioctl(p->subs[SUB_REAL].zfd, ZT_AUDIOMODE, &x);