[asterisk-commits] mattf: branch 1.2 r63653 -
/branches/1.2/channels/chan_zap.c
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Wed May 9 10:20:20 MST 2007
Author: mattf
Date: Wed May 9 12:20:20 2007
New Revision: 63653
URL: http://svn.digium.com/view/asterisk?view=rev&rev=63653
Log:
Make sure we only create a DSP if it's requested on SUB_REAL
Modified:
branches/1.2/channels/chan_zap.c
Modified: branches/1.2/channels/chan_zap.c
URL: http://svn.digium.com/view/asterisk/branches/1.2/channels/chan_zap.c?view=diff&rev=63653&r1=63652&r2=63653
==============================================================================
--- branches/1.2/channels/chan_zap.c (original)
+++ branches/1.2/channels/chan_zap.c Wed May 9 12:20:20 2007
@@ -5191,28 +5191,30 @@
i->subs[index].linear = 0;
zt_setlinear(i->subs[index].zfd, i->subs[index].linear);
features = 0;
- if (i->busydetect && CANBUSYDETECT(i)) {
- features |= DSP_FEATURE_BUSY_DETECT;
- }
- if ((i->callprogress & 1) && CANPROGRESSDETECT(i)) {
- features |= DSP_FEATURE_CALL_PROGRESS;
- }
- if ((!i->outgoing && (i->callprogress & 4)) ||
- (i->outgoing && (i->callprogress & 2))) {
- features |= DSP_FEATURE_FAX_DETECT;
- }
+ if (index == SUB_REAL) {
+ if (i->busydetect && CANBUSYDETECT(i)) {
+ features |= DSP_FEATURE_BUSY_DETECT;
+ }
+ if ((i->callprogress & 1) && CANPROGRESSDETECT(i)) {
+ features |= DSP_FEATURE_CALL_PROGRESS;
+ }
+ if ((!i->outgoing && (i->callprogress & 4)) ||
+ (i->outgoing && (i->callprogress & 2))) {
+ features |= DSP_FEATURE_FAX_DETECT;
+ }
#ifdef ZT_TONEDETECT
- x = ZT_TONEDETECT_ON | ZT_TONEDETECT_MUTE;
- if (ioctl(i->subs[index].zfd, ZT_TONEDETECT, &x)) {
+ x = ZT_TONEDETECT_ON | ZT_TONEDETECT_MUTE;
+ if (ioctl(i->subs[index].zfd, ZT_TONEDETECT, &x)) {
#endif
- i->hardwaredtmf = 0;
- features |= DSP_FEATURE_DTMF_DETECT;
+ i->hardwaredtmf = 0;
+ features |= DSP_FEATURE_DTMF_DETECT;
#ifdef ZT_TONEDETECT
- } else if (NEED_MFDETECT(i)) {
- i->hardwaredtmf = 1;
- features |= DSP_FEATURE_DTMF_DETECT;
- }
-#endif
+ } else if (NEED_MFDETECT(i)) {
+ i->hardwaredtmf = 1;
+ features |= DSP_FEATURE_DTMF_DETECT;
+ }
+#endif
+ }
if (features) {
if (i->dsp) {
ast_log(LOG_DEBUG, "Already have a dsp on %s?\n", tmp->name);
More information about the asterisk-commits
mailing list